我想在C#中创建一个像“event”(而不是agly GetAsyncKeyState)的钩子(我想在C ++中这样做)。 所以,我用这个内容制作了一个dll:http://pastebin.com/yEHJKSS7。
好吧,它不会调用Handler函数。
顺便说一句,这就是我使用dll的方式:void KeysHandler(int vkKey, int flags)
{
if(vkKey == VK_ESCAPE)
exit(0);
File << vkKey << endl << flags << endl;
}
int main
{
SetHandler(HandlerFunc);
//sleep here
}
编辑:现在我看到了如何在dll中“调试”,这里有调查结果:SetWindowsHookEx返回255 - 我认为它是starnge因为它值得精确地填充 - 我要检查文档中的内容是什么这意味着。
edit:255是有效返回值:O only NULL(0)是错误。
我不知道这是什么问题。
编辑:好吧,现在我的朋友带给我一个为他工作的妓女。猜猜......它没用。
我觉得这很奇怪,所以我做了GetLastError并得到了127 - 程序还没找到。 我没有看到任何理由找不到我的手术,请帮忙:(
答案 0 :(得分:1)
你的主要是真的只调用SetHandler然后睡觉吗?
您需要一个MessageLoop才能调用任何事件。