C ++如何中断Windows钩子中的消息循环

时间:2018-11-30 13:27:04

标签: c++ winapi

我需要中断win32键盘挂钩中的消息循环。循环看起来像这样,

MSG msg;
    while (GetMessage(&msg, NULL, NULL, NULL))  
    {
        TranslateMessage(&msg); 
        DispatchMessage(&msg);
    }

我使用了摘机方法,但是不起作用。我还有另一个问题,如果我将while循环参数更改为!GetMessage,它的工作原理与以前相同。如果在循环中添加printf,则不会打印任何内容。 我只想为键盘挂钩制作一个dll。和dll中的方法需要结束。有了这个(消息循环),我无法结束(或返回一些东西)那个方法。

对不起,我的英语不好。

谢谢。

1 个答案:

答案 0 :(得分:0)

使用PostQuitMessage(0)破坏程序。您可以将其放在窗口过程中,例如WM_DESTROY消息中。

相关问题