Кибор » Кибор - Интегрированная среда разработки ботов » Вопросы и решение проблем » Остановка бота через RegisterHotKey

Страниц (1): [1]
 

1. TWIN - 14 Сентября, 2020 - 03:41:24 - перейти к сообщению
Здравствуйте!

Как сделать остановку бота через Ctrl+S?

Есть пример:
CODE:

#define MOD_SHIFT 4
#define F1 112
external(INT, "RegisterHotKey", "RegisterHotKey", "User32.dll");

createdialog(0); // создать диалоговое окно
loop()
{
// тут скрипт
sleep(10);
}

end_script:;


function getmessage(0, WM_CREATE)
{
RegisterHotKey(gethwnd(0), 1, MOD_SHIFT, F1); // регистрируем хоткей Shift+F1
}

function getmessage(0, WM_HOTKEY)
{
if(message.wparam==1)goto global end_script; // если нажаты Shift+F1
}


Мне не совсем понятно почему "#define MOD_SHIFT 4" а не "#define MOD_SHIFT 16", откуда берется 4? Разве это не код клавиши?

Пытался сделать так "#define MOD_CONTROL 17" но результата нет.
2. Zireael - 14 Сентября, 2020 - 03:50:57 - перейти к сообщению
 Цитата:
Мне не совсем понятно почему "#define MOD_SHIFT 4" а не "#define MOD_SHIFT 16", откуда берется 4?

Из описании функции:RegisterHotKey function.
 Цитата:
Как сделать остановку бота через Ctrl+S?

CODE:
#define MOD_CONTROL 2
#define S_key 0x53
external(INT, "RegisterHotKey", "RegisterHotKey", "User32.dll");

createdialog(0); // создать диалоговое окно
loop()
{
// тут скрипт
sleep(10);
}

end_script:;


function getmessage(0, WM_CREATE)
{
RegisterHotKey(gethwnd(0), 1, MOD_CONTROL, S_key); // регистрируем хоткей Ctrl+S
}

function getmessage(0, WM_HOTKEY)
{
if(message.wparam==1)goto global end_script; // если нажаты Ctrl+S
}
3. TWIN - 14 Сентября, 2020 - 03:54:01 - перейти к сообщению
 Zireael пишет:
 Цитата:
Мне не совсем понятно почему "#define MOD_SHIFT 4" а не "#define MOD_SHIFT 16", откуда берется 4?

Из описании функции:RegisterHotKey function.
 Цитата:
Как сделать остановку бота через Ctrl+S?

CODE:
#define MOD_CONTROL 2
#define S_key 0x53
external(INT, "RegisterHotKey", "RegisterHotKey", "User32.dll");

createdialog(0); // создать диалоговое окно
loop()
{
// тут скрипт
sleep(10);
}

end_script:;


function getmessage(0, WM_CREATE)
{
RegisterHotKey(gethwnd(0), 1, MOD_CONTROL, S_key); // регистрируем хоткей Ctrl+S
}

function getmessage(0, WM_HOTKEY)
{
if(message.wparam==1)goto global end_script; // если нажаты Ctrl+S
}



Благодарю!)

Powered by ExBB FM 1.0 Final