Untitled
unknown
plain_text
2 years ago
1.2 kB
8
Indexable
#include <windows.h> #include <stdint.h> #include <iostream> LRESULT CALLBACK KeyboardProc(int nCode, WPARAM wParam, LPARAM lParam) { if (nCode != HC_ACTION) { return CallNextHookEx(NULL, nCode, wParam, lParam); } auto kbd = reinterpret_cast<KBDLLHOOKSTRUCT*>(lParam); if (kbd->vkCode == VK_PRIOR && !--kbd->flags) { keybd_event( VK_OEM_102, 0, NULL, 0 ); keybd_event( VK_OEM_102, 0, KEYEVENTF_KEYUP, 0 ); return 1; } if (kbd->vkCode == VK_NEXT && !--kbd->flags) { keybd_event( VK_SHIFT , 0, NULL, 0 ); keybd_event( VK_OEM_102, 0, NULL, 0 ); keybd_event( VK_SHIFT , 0, KEYEVENTF_KEYUP, 0 ); keybd_event( VK_OEM_102, 0, KEYEVENTF_KEYUP, 0 ); return 1; } return CallNextHookEx(NULL, nCode, wParam, lParam); } int main() { auto hook = SetWindowsHookEx(WH_KEYBOARD_LL, KeyboardProc, nullptr, 0); auto msg = MSG{}; while (GetMessage(&msg, nullptr, 0, 0)) { TranslateMessage(&msg); DispatchMessage(&msg); } UnhookWindowsHookEx(hook); return 0; }
Editor is loading...