;=====Запуск Mozilla Firefox
; (WIN+A)
;#a::
FireFox:
if (fnWinClose(arMainKey[fnRetIndexOfHotkey(A_ThisHotkey),iAhkC_WinT]))
return
Run, %ProgSysPath32%Mozilla Firefox\firefox.exe
return
arMainKey := [[cNone,cNoLbL,cSps] ; Если 3-й элемент cNone то конец массива
,[cNone,cNoLbL,"---------------- Запуск основных приложений"]
,[cNone,"Pidgin","Запуск Pidgin","ahk_class gdkWindowToplevel",cNone,cWin,"Q"]
,[cNone,"FireFox","Запуск Mozilla FireFox","Mozilla Firefox",cNone,cWin,"A"]
,[cNone,"Thunderbird","Запуск Mozilla Thunderbird","Thunderbird",cNone,cWin,"S"]
,[cNone,"TotalCommander","Запуск Total Commander","Total Commander",cNone,cWin,"X"]
,[cNone,"Notepad","Запуск Notepad++","Notepad++",cNone,cWin,"Z"]
,[cNone,"Photoshop","Запуск Adobe Photoshop CS5 (64 Bit)","ahk_class Photoshop",cNone,cWin,"F2"]
,[cNone,"OscarEditor","Запуск OSCAR Mouse Script Editor","Oscar Editor",cNone,cWin,"F4"]
,[cNone,"AnVirTaskManager","Запуск AnVir Task Manager","AnVir Task Manager",cNone,cCrush,cCtrl,cWin,"Z"]
,[cNone,"BackUp","Windows BackUp","Acronis True Image Home",cNone,cWin,"F9"]
,[cNone,"UpDate","Windows UpDate","Центр обновления Windows",cNone,cWin,"F10"]
,[cNone,cNoLbL,"---------------- Запуск функций McAfee"]
,[cNone,"vseOpenCon","Открыть консоль","Консоль VirusScan",cNone,cWin,"F5"]
,[cNone,"vseStopScan","Остановить целевое сканирование",cNone,cNone,cCtrl,"F5"]
,[cNone,"vseOnAccessScanLog","Журнал сканирования при обращении к файлу",cNone,cNone,cWin,"F6"]
,[cNone,"vseAccessProtectionLog","Журнал защиты доступа",cNone,cNone,cCtrl,"F6"]
,[cNone,"vseScanON","ON Сканирование при обращении к файлу",cNone,cNone,cWin,"F7"]
,[cNone,"vseScanOFF","OFF Сканирование при обращении к файлу",cNone,cNone,cCtrl,"F7"]
,[cNone,cNoLbL,"---------------- Разное"]
,[cNone,"CloseActiveWin","Закрыть активное окно",cNone,cNone,cWin,"W"]
,[cNone,"ToggleSound","Переключение звука Колонки/Наушники",cNone,cNone,cWin,"Tab"]
,[cNone,"GameKeyOnOff","On/Off игровых клавиш",cNone,cNone,cWin,"F12"]
,[cNone,"HelpKey","Вызов справки по клавишам","Справка по клавишам ",cNone,cWin,"F1"]
,[cNone,cNoLbL,"---------------- Перезапуск Windows"]
,[cNone,"WinRestart","Перезапуск Windows",cNone,cNone,cCrush,cCtrl,cWin,"F10"]
,[cNone,"PowerOff","Выключение компьютера",cNone,cNone,cCrush,cCtrl,cWin,"F11"]
,[cNone,"WinBlock","Блокировка Windows",cNone,cNone,cCrush,cCtrl,cWin,"F12"]
,[cNone,cNoLbL,cNone]]
;========================================================================
;++++++Сканирование массива и генерация хоткеев и прочей ерунды++++++++++
;========================================================================
;---Определение размера массива и валидности меток
i := 1
while (arMainKey[i,iText]) ; выполнять пока arMainKey[i,iText] != cNone
{
if (!IsLabel(arMainKey[i, iLabels]))
{
tTitl := "Error in script generation"
tInd := "An error of array declaration is in an index = " i
tLbl := """"arMainKey[i, iLabels]"""" " label is not defined or does not exist"
tTxt := сErrOfExit
MsgBox ,0
, %tTitl%
, %tInd% `n`n %tLbl% `n`n %tTxt%
,30
ExitApp
}
vLenTMP := StrLen(arMainKey[i,iExTxt])
if (vLenTMP > vLenExTxt)
vLenExTxt := vLenTMP
i++
}
cSizeA := i
vLenExTxt += 35
;---Генерация имён клавиш и хоткеев (парсер)
i := 1
loop %cSizeA%
{
j := iHKey
bfName := cNone
bfHotK := cNone
if ((arMainKey[i,iLabels]<>cNoLbL) and (arMainKey[i,iHKey]=cNone)) ; Проверка отсутствия HotKey для метки
{
vLbl := arMainKey[i,iLabels]
MsgBox ,0
, Error
, "%vLbl%" for the label is not defined hotkey `n`n %сErrOfExit%
,10
ExitApp
}
vPriNoKey := 0
while (arMainKey[i,j])
{
bfHotK := bfHotK fnAssigKey(arMainKey[i,j],arAssigKey*)
k := 1
vFlgNoKey := false
while (arAssigKeyNo[k] and (!vFlgNoKey))
{
if (arMainKey[i,j]=arAssigKeyNo[k])
{
vFlgNoKey := true
vPriNoKey := j
;msgbox vPriNoKey := %vPriNoKey%
}
else
vFlgNoKey := false
k++
}
if (!vFlgNoKey)
{
if (j = iHKey)
bfName := arMainKey[i,j]
else
if (vPriNoKey=iHKey)
bfName := arMainKey[i,j]
else
bfName := bfName cGap arMainKey[i,j]
vPriNoKey := 0
}
j++
}
if (bfName)
{
arMainKey[i,iKeys] := bfName ; Пишем названия клавиш
vLabel := arMainKey[i,iLabels] ; Генерируем HotKey
arMainKey[i,iHKeyN] := bfHotK ; Заносим акроним в массив
HotKey %bfHotK%,%vLabel%, %cOnHK% UseErrorLevel ; Включение HotKey
vEL := ErrorLevel
if (!vEL) and (!fnErrDub(bfHotK,vLabel,i,arMainKey*))
vEL := 100 ; Моя ошибка ( все мои ошибки больше 99)
vHK := "HotKey" cSps bfHotK cSps cComma cSps vLabel
if (vEL)
{
if (vEL=1)
vELTxt := "The label name that does not exist"
if (vEL=2)
vELTxt := "Re-use of combinations of hot keys."
if (vEL=3)
vELTxt := "Hot key modifier is not supported."
if (vEL=4)
vELTxt := "This shortcut is not suitable for emulation"
if (vEL=5)
vELTxt := "This keys of accelerators do not exist."
if (vEL=6)
vELTxt := "Non-existent variant of existent hotkey"
if ((vEL=98) or (vEL=99))
vELTxt := "Other errors"
if (vEL=100)
vELTxt := "This hotkey is already used"
MsgBox 0
,Failed to use hotkeys
,Еrror in %vHK% `n Еrror= %vELTxt% `n ErrorLevel= %vEL% `n `n %сErrOfExit%
,15
ExitApp
}
}
i++
}
;fnHotKeyOnOff(,"sasa1","sasa2")
;или
;vTmpArr := ["tata1","tata2","tata3"]
;fnHotKeyOnOff(false,vTmpArr*)
;----------------------------Конец стартовых определений --------------------------------
return
;msgbox % a[2,3] " " a[3,1]
;o := {a:{a1:1,a2:2,a3:3},b:{b1:1,b2:2,b3:3},c:{c1:1,c2:2,c3:3}}
;msgbox % o.a.a1 " " o["a", "a2"]
;=============================================================================