4

是否可以在 C# 中侦听发送到其他进程中其他窗口的鼠标相关窗口消息?

4

3 回答 3

6

Codeplex 中有一个开源项目用于该
应用程序和 C# 中的全局鼠标和键盘挂钩 .Net 库
如果你想自己做一些额外的搜索Windows Hooks
这篇文章展示了如何

于 2013-01-24T07:18:10.283 回答
5

您可以查看Codeplex 应用程序和全局鼠标和键盘挂钩库

该库附加到 Windows 全局挂钩,跟踪键盘和鼠标的单击和移动,并使用 KeyEventArgs 和 MouseEventArgs 引发常见的 .NET 事件,因此您可以轻松检索所需的任何信息:
鼠标坐标单击鼠标
按钮
鼠标滚轮滚动
按键和释放
特殊键状态

从上面的链接文档

在开始之前,重要的是要知道挂钩术语可以并且将可以互换使用。全局挂钩也称为系统或系统范围挂钩,将涵盖整个操作系统。应用程序钩子通常称为本地,因为顾名思义,只会对应于放置钩子(或特定线程)的单个应用程序。

于 2013-01-24T07:14:56.200 回答
1

没有管理的方法可以做到这一点。但是,对于 Windows Api,这是可能的:

这应该可以帮助你。

C# - 从特定应用程序捕获 Windows 消息

捕获 WM_MOUSEMOVE 将是一个好的开始 http://msdn.microsoft.com/en-us/library/windows/desktop/ms645616(v=vs.85).aspx

但也有其他与鼠标相关的窗口消息。

于 2013-01-24T07:14:28.157 回答