Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   AutoIt (http://forum.oszone.net/forumdisplay.php?f=103)
-   -   [решено] Создание и настройка Quick Launch в Windows 7 (http://forum.oszone.net/showthread.php?t=224324)

sov44 03-01-2012 16:32 1827529

Создание и настройка Quick Launch в Windows 7
 
Прошу поправить скрипт создания Quick Launch в Windows 7, сделав русскую локализацию, вернуть языковую панель в правый нижний угол, удалить все ярлыки и папку User Pinned из панели быстрого запуска.
Скрипт взят тут

Creat0R 03-01-2012 17:30 1827560

Предупреждение за нарушение правил форума, пункт 2.7 и пункт 3.19:

Цитата:

2.7: В заголовке темы обязательно обозначайте название предмета, которого касается вопрос, а в теле сообщения максимально подробно опишите проблему (приведите аппаратную/программную конфигурацию, а также изложите ситуацию, в которой возникает проблема)...
Подробнее о принципах создания тем читайте в этом документе и Правилах форумов.

3.19: Запрещается... Создавать темы, имеющие неинформативные или состоящие из заглавных букв заголовки (например, "Помогите!", "HELP!", "У меня проблема"). Такие темы будут закрыты или перенесены в Тест-форум. Если вы хотите вернуть перенесенную тему обратно, пока ее не закрыли в Тест-форуме, измените ее заголовок на осмысленный и напишите об этом в теме.
Переименуйте пожалуйста тему (Как переименовать свою тему?).

sov44 07-01-2012 00:42 1829965

Решено. Всем НЕ спасибо.

Creat0R 07-01-2012 21:45 1830478

Цитата:

Цитата sov44
Решено »

А решение тут привести не судьба?
Иначе нет смысла в данной теме, и я её удалю.

Цитата:

Цитата sov44
Всем НЕ спасибо »

Ну вот привёл бы решение тут, и было бы кому сказать спасибо, можно иногда и полезным быть для общества ;)

sov44 07-01-2012 22:41 1830527

Цитата:

Цитата Creat0R
привёл бы решение »

Creat0R, да без проблем. Я не программер, может быть будут предложения по улучшению скрипта :)
Локализация скрипта - Morpheus
Для применения настроек требуется перезагрузка.
читать дальше »
Код:

Opt("TrayIconDebug", 1)
Opt("WinDetectHiddenText", 0)
Opt("WinTextMatchMode", 2)
Opt("TrayIconHide", 0)
HotKeySet("{F1}", "OnF1")
Sleep(100)
If $CMDLINE[0] Then
        For $I = 1 To $CMDLINE[0]
                Switch $CMDLINE[$I]
                        Case "/?"
                                MsgBox(262144, "Help", "Switchless Commands: /NOPIN /TGL /TSI /AUTOTRAY /LBS3 /EXPLORER")
                                Exit
                        Case "/NOPIN"
                                RegWrite("HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\Explorer", "TaskbarNoPinnedList", "REG_DWORD", "1")
                        Case "/TGL"
                                RegWrite("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced", "TaskbarGlomLevel", "REG_DWORD", "2")
                        Case "/TSI"
                                RegWrite("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced", "TaskbarSmallIcons", "REG_DWORD", "1")
                        Case "/AUTOTRAY"
                                RegWrite("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer", "EnableAutoTray", "REG_DWORD", "0")
                        Case "/LBS3"
                                RegWrite("HKEY_CURRENT_USER\Software\Microsoft\CTF\LangBar", "ShowStatus", "REG_DWORD", "3")
                        Case "/EXPLORER"
                                ProcessClose("explorer.exe")
                EndSwitch
        Next
EndIf
If Not ProcessWait("explorer.exe", 5) Then Run(@WindowsDir & "\explorer.exe")
WinWait("[CLASS:Shell_TrayWnd]")
Sleep(2000)
TrayTip("Quick Launch Classic 7", "Я работаю - ничего не трогай!!!", 30, 2)
MsgBox(4095, "Running.", "Quick Launch Classic 7", 1)
Sleep(10000)
$TASKBARSIZEMOVE = RegRead("HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced", "TaskbarSizeMove")
If $TASKBARSIZEMOVE = 1 Then
        Do
                ProcessClose("explorer.exe")
        Until Not ProcessExists("explorer.exe")
        RegWrite("HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced", "TaskbarSizeMove", "REG_DWORD", "0")
        If Not ProcessWait("explorer.exe", 5) Then Run(@WindowsDir & "\explorer.exe")
        WinWait("[CLASS:Shell_TrayWnd]")
        Sleep(2000)
EndIf
$TRAY = ControlGetPos("[CLASS:Shell_TrayWnd]", "", "[CLASS:CiceroUIWndFrame; TEXT:TF_FloatingLangBar_WndTitle]")
If Not @error Then
        Call("_DISABLELANGBAR")
        $QLA = WinGetText("[CLASS:Shell_TrayWnd]", "")
        If StringInStr($QLA, "Quick Launch") Then
                MouseClick("right", 0, @DesktopHeight)
                Send("{DOWN}{RIGHT}{UP 2}{ENTER}")
        EndIf
EndIf
$QLA = WinGetText("[CLASS:Shell_TrayWnd]", "")
If StringInStr($QLA, "Quick Launch") Then
        MouseClick("right", 0, @DesktopHeight)
        Send("{DOWN}{RIGHT}{UP 2}{ENTER}")
EndIf
$CLEARDESKTOP = ControlGetPos("[CLASS:Shell_TrayWnd]", "", "[CLASS:TrayShowDesktopButtonWClass]")
$TASKBAR_CENTERHEIGHT = @DesktopHeight - ($CLEARDESKTOP[3] / 2)
MouseClick("left", $CLEARDESKTOP[0] - 0, $TASKBAR_CENTERHEIGHT, 1, 10)
_TOGGLETASKBARLOCK()
$TRAY = ControlGetPos("[CLASS:Shell_TrayWnd]", "", "[CLASS:CiceroUIWndFrame; TEXT:TF_FloatingLangBar_WndTitle]")
If Not @error Then
        Call("_DISABLELANGBAR")
EndIf
$PATH = "Shell:Quick Launch"
$TOOLBARTEXT = "{DOWN 3}{ENTER}"
$TOOLBARTITLE = "{DOWN 4}{ENTER}"
$TRAY = ControlGetPos("[CLASS:Shell_TrayWnd]", "", "[CLASS:ReBarWindow32]")
$LANG = RegRead("HKEY_CURRENT_USER\Control Panel\Desktop", "PreferredUILanguages")
If @error = 0 Then
Else
        $LANG = RegRead("HKEY_CURRENT_USER\Control Panel\Desktop\MuiCached", "MachinePreferredUILanguages")
EndIf
Select
        Case $LANG = "en-US"
                $TITLE = "New Toolbar - Choose a folder"
                $PROGRAMS = "[CLASS:MSTaskListWClass; TEXT:Running applications]"
        Case $LANG = "fr-FR"
                $TITLE = "Nouvelle barre d’outilsВ*-В*Choisir un dossier"
                $PROGRAMS = "[CLASS:MSTaskListWClass; TEXT:Applications en cours d’exР№cution]"
        Case $LANG = "nl-NL"
                $TITLE = "Nieuwe werkbalk - Selecteer een map"
                $PROGRAMS = "[CLASS:MSTaskListWClass; TEXT:Actieve toepassingen]"
        Case $LANG = "da-DK"
                $TITLE = "Ny vР¶rktС?jslinje - vР¶lg en mappe"
                $PROGRAMS = "[CLASS:MSTaskListWClass; TEXT:Programmer, der kС?rer]"
        Case $LANG = "se-SE"
                $TITLE = "Nytt verktygsfРґlt - vРґlj en mapp"
                $PROGRAMS = "[CLASS:MSTaskListWClass; TEXT:Program som kС†rs]"
        Case $LANG = "nb-NO"
                $TITLE = "Ny verktС?ylinje - velg en mappe"
                $PROGRAMS = "[CLASS:MSTaskListWClass; TEXT:KjС?rer programmer]"
        Case $LANG = "de-DE"
                $TITLE = "Neue Symbolleiste - Ordner auswРґhlen"
                $PROGRAMS = "[CLASS:MSTaskListWClass; TEXT:AusgefСЊhrte Anwendungen]"
        Case $LANG = "ru-RU"
                $TITLE = "Новая панель инструментов - Выбор папки"
                $PROGRAMS = "[CLASS:MSTaskListWClass; TEXT:Выполнение приложений]"
EndSelect
_TASKTOOLBARWIN7("Shell:Quick Launch")
While 1
        Sleep(100)
        $QUICKLAUNCH = ControlGetPos("[CLASS:Shell_TrayWnd]", "", "[CLASS:ToolbarWindow32; TEXT:Quick Launch]")
        If Not @error Then ExitLoop
WEnd
$TASKBAR_CENTERHEIGHT = @DesktopHeight - ($QUICKLAUNCH[3] / 2)
Sleep(100)
MouseClick("right", $QUICKLAUNCH[0] - 5, $TASKBAR_CENTERHEIGHT, 1, 0)
Send($TOOLBARTEXT)
Sleep(100)
$TASKBAR_CENTERHEIGHT = @DesktopHeight - ($QUICKLAUNCH[3] / 2)
Sleep(100)
MouseClick("right", $QUICKLAUNCH[0] - 5, $TASKBAR_CENTERHEIGHT, 1, 0)
Send($TOOLBARTITLE)
Sleep(1000)
$QUICKLAUNCH = ControlGetPos("[CLASS:Shell_TrayWnd]", "", "[CLASS:ToolbarWindow32; TEXT:Quick Launch]")
MouseClickDrag("left", $QUICKLAUNCH[0] - 10, $TASKBAR_CENTERHEIGHT, $TRAY[0] + 5, $TASKBAR_CENTERHEIGHT, 40)
$CURRENTAPPS = ControlGetPos("[CLASS:Shell_TrayWnd]", "", $PROGRAMS)
MouseClickDrag("left", $CURRENTAPPS[0] - 10, $TASKBAR_CENTERHEIGHT, $TRAY[0] + 150, $TASKBAR_CENTERHEIGHT, 40)
_TOGGLETASKBARLOCK()
$CLEARDESKTOP = ControlGetPos("[CLASS:Shell_TrayWnd]", "", "[CLASS:TrayShowDesktopButtonWClass]")
$TASKBAR_CENTERHEIGHT = @DesktopHeight - ($CLEARDESKTOP[3] / 2)
MouseClick("left", $CLEARDESKTOP[0] - 0, $TASKBAR_CENTERHEIGHT, 1, 10)

Func _DISABLELANGBAR()
        MouseClick("right", 0, @DesktopHeight)
        Send("{DOWN}{RIGHT}{UP 2}{ENTER}")
EndFunc


Func _TASKTOOLBARWIN7($PATH)
        MouseClick("right", 0, @DesktopHeight)
        Send("{DOWN}{RIGHT}{UP}{ENTER}")
        WinActive($TITLE)
        Sleep(1000)
        ControlSetText($TITLE, "", "Edit1", $PATH)
        Sleep(1000)
        ControlClick($TITLE, "", "Button1")
EndFunc


Func _TOGGLETASKBARLOCK()
        MouseClick("right", 0, @DesktopHeight)
        Send("{UP 2}{ENTER}")
EndFunc

;языковую панель на место
BlockInput(1)
$MP = MouseGetPos()
$WP = WinGetPos('TF_FloatingLangBar_WndTitle')
MouseClick('left', $WP[0] + $WP[2] - 10, $WP[1] + 10, 1, 0)
MouseMove($MP[0], $MP[1], 0)
BlockInput(0)

; Удаление ярлыков
FileDelete(@AppDataDir & "\Microsoft\Internet Explorer\Quick Launch\Shows Desktop.lnk")
FileDelete(@AppDataDir & "\Microsoft\Internet Explorer\Quick Launch\Window Switcher.lnk")
; Удаление папки с ярлыками
DirRemove(@AppDataDir & "\Microsoft\Internet Explorer\Quick Launch\User Pinned", 1)
;Правка реестра на удаление ярлыков
RegWrite("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Taskband", "Favorites", "REG_BINARY", "ff")
RegDelete("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Taskband", "FavoritesResolve")

;
$LANGBAR = RegRead("HKEY_CURRENT_USER\Software\Microsoft\CTF\LangBar", "ShowStatus")
Select
        Case $LANGBAR = "0"
                RegWrite("HKEY_CURRENT_USER\Software\Microsoft\CTF\LangBar", "ShowStatus", "REG_DWORD", "4")
EndSelect

Func ONF1()
Exit
EndFunc

TrayTip("Quick Launch Classic 7", "Наслаждайся!", 30, 2)
MsgBox(4095, "Running.", "Quick Launch Classic 7", 1)
Sleep(2000)


Creat0R, если не будет активности в теме, тогда удаляйте её.

kaster 07-01-2012 22:46 1830533

sov44, код надо заключить в тэги ;)
а про активность, активность тут не главное. главное - это целостная картина "вопрос-решение", которая в дальнейшем может быть использована другими участниками форума.

UKS01pokas 26-12-2012 05:11 2053546

Вложений: 1
Что ж, делали делали и не доделали. 11 месяцев прошло, а работающий результат поленились выложить. И скрипт для русификации старый выбрали, хотя на тот момент уже был новый, не требующий перезагрузки.
Короче, всё сначала:

1) Идём на официальную страничку разработчика Quick Launch Classic 7 Tool 1.0.5 на MSFN
и качаем оттуда QuickLaunchClassic_1.05.zip .


Для локализации (русификации) QuickLaunchClassic7.au3 необходимо знать:

2) - стандартные коды локализации: Country Code Language List
в частности: "Russia - Russian", "ru-RU"

3)
- локализованные названия классов из Explorer.exe. Интересует класс "MSTaskSwWClass". Его можно узнать, запустив EnumShell.exe,
в частности для русской Windows 7 получаем class = "MSTaskSwWClass" title = "Выполнение приложений"

4) Добавляем полученные данные локализации (русский) в QuickLaunchClassic7.au3 в раздел, где выбирается язык
Цитата:

Select
;Case $Lang = English
Case $Lang = "en-US"
$title = "New Toolbar - Choose a folder"
$programs = "[CLASS:MSTaskListWClass; TEXT:Running applications]"

;...

;Case $Lang = Russian
Case $Lang = "ru-RU"
$title = "Новая панель инструментов - Выбор папки"
$programs = "[CLASS:MSTaskListWClass; TEXT:Выполнение приложений]"
EndSelect

5) Качаем последнюю версию AutoIt и компилируем правленный файл.

Результат см во вложении. Работоспособность проверялась только на x32 системе. По окончании работы скрипта открываются окна Изменения настроек даты и времени и Языковая панель, т.к. они мешают перемещению QuickLaunch к кнопке Пуск, их нужно просто закрыть.
P.S. не судите строго, я тоже не программер ;)

UKS01pokas 26-12-2012 05:53 2053548

Прошу прощения, а слона-то я и не увидел - в шапке тоже версия 1.05.
читать дальше »
На эту страницу зашёл по ссылке из гугля, а он процитировал только файл QuickLaunchClassic7_mod.7z от 07.01.2012, в котором лежит сильно покоцанная и не работающая версия.
Т.к. это единственная найденная мною страница по QuickLaunchClassic7 в Рунете, да и та без результата, пришлось потратить несколько часов на изучение, т.к. впервые встречаюсь с компилятором скриптов AutoIt.
Надеюсь, от моего варианта хуже не будет.

Жаль, что возникают такие сложности с переводом. Автор QuickLaunchClassic7 осилил лишь несколько европейских языков.
Например строку $title = "Новая панель инструментов - Выбор папки" вычислить автоматически не удалось, названия определены вручную по заголовку окна "Панель задач - Панели - Создать панель инструментов".

segamaster 14-08-2018 08:50 2826312

А как не сдвигать панель так далеко налево ? Какой параметр за это отвечает? Хочу чтоб сдвигалась влево на несколько сантиметров в зависимости от разрешения экрана.


Время: 03:06.

Время: 03:06.
© OSzone.net 2001-