Помогите разобраться с WndProc hook.

otherwise

Участник
Автор темы
46
7
В прошлой теме мне посоветовали вместо создания потока хукать гташку, ну прочитал я про хук ииии, нихрена не понял как это использовать для написания того же аирбрейка на самп. Может кто скинуть пример плагина ASI с WndProc hook?
p.s предыдущая тема - https://blast.hk/threads/46211/
 
Решение
C++:
WNDPROC        g_origWndProc = NULL;
// Установка хука
// globalHWND HWND твоего окна. Как его получить гугли
g_origWndProc = (WNDPROC)SetWindowLong(globalHWND, GWL_WNDPROC, (LONG)WndProcHook);


LRESULT CALLBACK WndProcHook(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
    if(msg == WMKEYDOWN) {

if (wParam == VK_F10) {
// твои действия
}
}

    return CallWindowProc(g_origWndProc, hWnd, msg, wParam, lParam);
}

iAmerican

Известный
Друг
614
260
C++:
WNDPROC        g_origWndProc = NULL;
// Установка хука
// globalHWND HWND твоего окна. Как его получить гугли
g_origWndProc = (WNDPROC)SetWindowLong(globalHWND, GWL_WNDPROC, (LONG)WndProcHook);


LRESULT CALLBACK WndProcHook(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
    if(msg == WMKEYDOWN) {

if (wParam == VK_F10) {
// твои действия
}
}

    return CallWindowProc(g_origWndProc, hWnd, msg, wParam, lParam);
}
 
  • Нравится
Реакции: otherwise

otherwise

Участник
Автор темы
46
7
C++:
WNDPROC        g_origWndProc = NULL;
// Установка хука
// globalHWND HWND твоего окна. Как его получить гугли
g_origWndProc = (WNDPROC)SetWindowLong(globalHWND, GWL_WNDPROC, (LONG)WndProcHook);


LRESULT CALLBACK WndProcHook(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
    if(msg == WMKEYDOWN) {

if (wParam == VK_F10) {
// твои действия
}
}

    return CallWindowProc(g_origWndProc, hWnd, msg, wParam, lParam);
}
Попробовал, но у меня две ошибки которые я хз как исправить. https://prnt.sc/qcom72
 
  • Ха-ха
Реакции: Carrentine

Carrentine

Потрачен
569
463
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.

Carrentine

Потрачен
569
463
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
  • Нравится
Реакции: otherwise