1 (изменено: Ya , 2013-09-05 21:12:47)

Тема: AHK: Запуск скрипта любой комбинацией

В общем, есть скрипт, который запускается кнопкой CTRL, но не это не всегда удобно. Хотелось бы добавить возможность запускать скрипт любой комбинацией с кнопкой CTRL

2

Re: AHK: Запуск скрипта любой комбинацией

Ya , ознакомьтесь с этой темой, отредактируйте заголовок.

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

3

Re: AHK: Запуск скрипта любой комбинацией

teadrinker пишет:

Ya , ознакомьтесь с этой темой, отредактируйте заголовок.

Простите, забылся.

4

Re: AHK: Запуск скрипта любой комбинацией


*RCtrl::
*LCtrl:: ToolTip ToolTip 
По вопросам возмездной помощи пишите на E-Mail: serzh82saratov@mail.ru Telegram: https://t.me/sergiol982
Win10x64 AhkSpy, Hotkey, ClockGui

5

Re: AHK: Запуск скрипта любой комбинацией

Просите, я не совсем правильно выразился.
Конторол ставит/снимает скрипт с паузы. То есть, строка такая

Control::Pause

Как ее отредактировать правильно, чтобы заработало?

6

Re: AHK: Запуск скрипта любой комбинацией

Что заработало?

По вопросам возмездной помощи пишите на E-Mail: serzh82saratov@mail.ru Telegram: https://t.me/sergiol982
Win10x64 AhkSpy, Hotkey, ClockGui

7

Re: AHK: Запуск скрипта любой комбинацией

Нет. Паузу вообще игнорирует. Нужно чтобы скрипт, снимался и ставился на паузу любой комбинацией с кнопкой CTRL

8

Re: AHK: Запуск скрипта любой комбинацией


*RCtrl::
*LCtrl:: Pause

Что значит:

любой комбинацией с кнопкой CTRL

По вопросам возмездной помощи пишите на E-Mail: serzh82saratov@mail.ru Telegram: https://t.me/sergiol982
Win10x64 AhkSpy, Hotkey, ClockGui

9

Re: AHK: Запуск скрипта любой комбинацией

любой комбинацией с кнопкой CTRL

Ctrl+любая кнопка
Любая кнопка+Ctrl
Удерживание Ctrl+любая кнопка
Удерживание любой кнопки+Ctrl

10 (изменено: serzh82saratov, 2013-09-06 00:47:14)

Re: AHK: Запуск скрипта любой комбинацией


SetBatchLines -1
Hook := DllCall("SetWindowsHookEx" . (A_IsUnicode ? "W" : "A")
        , Int, 13 ; WH_KEYBOARD_LL := 13
        , Ptr, RegisterCallback("LowLevelKeyboardProc", "Fast")
        , Ptr, DllCall("GetModuleHandle", UInt, 0, Ptr)
        , UInt, 0, Ptr)
OnExit, Exit 
Return
 
CtrlKEYDOWN:
    ToolTip Ctrl && KEYDOWN
    Return

LowLevelKeyboardProc(nCode, wParam, lParam)  {
    Static KEYDOWN, Ctrl
    SaveFormat := A_FormatInteger
    SetFormat, IntegerFast, H
    VkCode := NumGet(lParam+0, 0, "UInt")
       
    IF (wParam = 0x100 || wParam = 0x104)    ;    WM_KEYDOWN := 0x100, WM_SYSKEYDOWN := 0x104
    {
        IF (VkCode = 0xA2 || VkCode = 0xA3)
            Ctrl := 1
        Else
            KEYDOWN := 1 
    }
    
    Else IF (wParam = 0x101 || wParam = 0x105)  ;  WM_KEYUP := 0x101, WM_SYSKEYUP := 0x105 
    {
        IF (VkCode = 0xA2 || VkCode = 0xA3)
            Ctrl := 0
        Else
            KEYDOWN := 0 
    }
    
    IF (Ctrl && KEYDOWN)
        SetTimer CtrlKEYDOWN, -10 
    SetFormat, IntegerFast, %SaveFormat%
    Return DllCall("CallNextHookEx", Ptr, 0, Int, nCode, UInt, wParam, UInt, lParam) 
}

Exit:
    DllCall("UnhookWindowsHookEx", Ptr, Hook)
    ExitApp 
По вопросам возмездной помощи пишите на E-Mail: serzh82saratov@mail.ru Telegram: https://t.me/sergiol982
Win10x64 AhkSpy, Hotkey, ClockGui

11 (изменено: serzh82saratov, 2013-09-06 00:54:29)

Re: AHK: Запуск скрипта любой комбинацией

Повторное действие только после отпускания Ctrl:


SetBatchLines -1
Hook := DllCall("SetWindowsHookEx" . (A_IsUnicode ? "W" : "A")
        , Int, 13 ; WH_KEYBOARD_LL := 13
        , Ptr, RegisterCallback("LowLevelKeyboardProc", "Fast")
        , Ptr, DllCall("GetModuleHandle", UInt, 0, Ptr)
        , UInt, 0, Ptr)
OnExit, Exit 
Return

CtrlKEYDOWN:
    ToolTip Ctrl && KEYDOWN
    Return
 
LowLevelKeyboardProc(nCode, wParam, lParam)  {
    Static KEYDOWN, Ctrl, CtrlUP
    SaveFormat := A_FormatInteger
    SetFormat, IntegerFast, H
    VkCode := NumGet(lParam+0, 0, "UInt")
    
    IF (wParam = 0x100 || wParam = 0x104)    ;    WM_KEYDOWN := 0x100, WM_SYSKEYDOWN := 0x104
    {
        IF (VkCode = 0xA2 || VkCode = 0xA3) 
            Ctrl := 1
        Else
            KEYDOWN := 1 
    }
    
    Else IF (wParam = 0x101 || wParam = 0x105)  ;  WM_KEYUP := 0x101, WM_SYSKEYUP := 0x105 
    {
        IF (VkCode = 0xA2 || VkCode = 0xA3)
            Ctrl := CtrlUP := 0
        Else
            KEYDOWN := 0 
    }
 
    IF (Ctrl && KEYDOWN  && !CtrlUP)
    {
        CtrlUP := 1
        SetTimer CtrlKEYDOWN, -10
    }
    SetFormat, IntegerFast, %SaveFormat%
    Return DllCall("CallNextHookEx", Ptr, 0, Int, nCode, UInt, wParam, UInt, lParam) 
}

Exit:
    DllCall("UnhookWindowsHookEx", Ptr, Hook)
    ExitApp 
По вопросам возмездной помощи пишите на E-Mail: serzh82saratov@mail.ru Telegram: https://t.me/sergiol982
Win10x64 AhkSpy, Hotkey, ClockGui

12

Re: AHK: Запуск скрипта любой комбинацией

А вот чтобы снимать так с Pause, код надо запускать отдельным скриптом.

По вопросам возмездной помощи пишите на E-Mail: serzh82saratov@mail.ru Telegram: https://t.me/sergiol982
Win10x64 AhkSpy, Hotkey, ClockGui

13

Re: AHK: Запуск скрипта любой комбинацией

Спасибо. Сейчас буду пробывать.