//.cpp#include "windows.h"#define WH_KEYBOARD_LL     13typedef struct tagKBDLLHOOKSTRUCT {
    DWORD   vkCode;
    DWORD   scanCode;
    DWORD   flags;
    DWORD   time;
    DWORD   dwExtraInfo;
} KBDLLHOOKSTRUCT, FAR *LPKBDLLHOOKSTRUCT, *PKBDLLHOOKSTRUCT;HHOOK hHook = NULL;
HINSTANCE hInstance = NULL;void WINAPI StartHook();
void WINAPI StopHook();
LRESULT CALLBACK LowLevelKeyboardProc(int nCode, WPARAM wParam, LPARAM lParam);BOOL APIENTRY DllMain(HANDLE hModule, DWORD  ul_reason_for_call, LPVOID lpReserved)
{
hInstance = (HINSTANCE)hModule;
    return TRUE;
}LRESULT CALLBACK LowLevelKeyboardProc(int nCode, WPARAM wParam, LPARAM lParam)
{
if (nCode >= 0)
{
KBDLLHOOKSTRUCT* kb = (KBDLLHOOKSTRUCT*)lParam;
bool exp = kb->vkCode == 91 || kb->vkCode == 92 || kb->vkCode >= 160 && kb->vkCode <= 165;
if (exp) return TRUE;
}
return CallNextHookEx(hHook, nCode, wParam, lParam);
}void WINAPI StartHook()
{
hHook = SetWindowsHookEx(WH_KEYBOARD_LL, LowLevelKeyboardProc, hInstance, 0);

}void WINAPI StopHook()
{
UnhookWindowsHookEx(hHook);
}//.defEXPORTS
StartHook @1
StopHook @2要求编译成.DLL文件,多谢!
[email protected]