目前,我正在使用强大的 SetWinEventHook() 函数来捕获一些用户界面的操作,例如最小化和最大化计算机上程序运行的其他窗口。
因此,我通过在这篇文章中使用 BrendanMcK 提供的代码来启发自己,并且它确实有效(我的意思是:当事件发生时调用回调函数)直到行
MessageBox.Show("Something")
存在。但我不想为这个程序使用任何形式或窗口..
经过一番研究,我发现这种钩子需要一个消息循环来允许重定向来自其他窗口句柄的消息。显然,使用 Application.Run() 调用线程应该可以解决问题,但我更喜欢在 C# 对象本身中使用更干净的东西。
所以我的问题是:是否可以在对象的方法中创建消息循环?
http://bytes.com/topic/c-sharp/answers/557342-thread-message-loop-c