很久以前,当我看到一个应用为游戏做这个时,我就有了这个想法。
我想抓住某些击键。像/ s myCommand之类的东西。我有人告诉我并通过msn搞砸了我,所以我的第一个命令就像killmsn。我在msdn上查找了资源并得到了这一点。这不起作用,为什么不呢?是睡眠的BC吗?我应该怎么做,请注意我没有窗口,我希望这是一个控制台应用程序。我的KeyboardProc永远不会被称为
#include <windows.h>
#include <stdio.h>
HHOOK hook;
LRESULT CALLBACK KeyboardProc(int code, WPARAM wParam, LPARAM lParam)
{
printf("%c", wParam);
return CallNextHookEx(hook, code, wParam, lParam);
}
int main()
{
hook = SetWindowsHookEx(WH_KEYBOARD, KeyboardProc, GetModuleHandle(0), 0);
Sleep(10000);
UnhookWindowsHookEx(hook);
return 0;
}
答案 0 :(得分:0)
解决方案
//Sleep(10000);
MSG msg;
while(GetMessage(&msg, NULL, 0, 0) > 0)
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
UnhookWindowsHookEx(hook);