如何使用Handler

时间:2016-05-25 13:02:55

标签: c# .net visual-studio-2012 window-messages

我可以使用以下代码从我的应用程序中关闭另一个应用程序窗口(计算器):

hwnd = FindWindow(null, "Calculator");SendMessage(hwnd,WM_CLOSE,0,IntPtr.Zero); 

但我想在同一计算器应用程序窗口中禁用鼠标滚轮。我尝试了以下方法,但它不起作用:

SendMessage(hwnd, WM_MOUSEWHEEL, 0, IntPtr.Zero);

1 个答案:

答案 0 :(得分:2)

如果你想为特定的hWnds禁用它,你需要进入事件并捕获事件。

看看这个: https://msdn.microsoft.com/en-us/library/windows/desktop/dd373640(v=vs.85).aspx

如果您定义了回调函数,它确实需要注意将事件正确分发到除您正在搜索的Windows之外的所有Windows,尽管我不确定这是否只是Eventmessage的克隆或者,如果设置了挂钩,它们仅指向您的应用程序。

重要的是,示例中提供的代码不完整, 它缺少一个消息循环,它实际上是从消息队列中获取的。

修改

下面提到的链接

http://null-byte.wonderhowto.com/how-to/create-simple-hidden-console-keylogger-c-sharp-0132757/