如何在SCREEN上获取鼠标WM_MouseMove消息?

时间:2011-08-04 08:06:05

标签: c# c++ code-injection

现在我正在开展一个项目,要求我随时获取鼠标移动信息。 我的应用程序只有一个小窗口用于配置目的,它甚至不会出现在桌面上大多数时间。我需要的是我需要能够记录鼠标移动到桌面上。意思是人们在桌面上移动他们的鼠标(应该是explorer.exe,对吗?),我需要知道。

我该怎么做?使用c#或C ++。用注射?全球钩?我听说只有c ++支持全局钩子,对吗?

2 个答案:

答案 0 :(得分:1)

是的,你需要一个全局钩子,据我所知你应该使用C或C ++。

请参阅有关函数SetWindowsHookEx()&的文档。合。 (WH_MOUSE钩子)。

但要注意!你必须在DLL中写一个全局钩子,它会在每个进程中用一个窗口注入,所以你做的任何坏事都可能会崩溃你的会话中的任何其他程序(包括explorer.exe, devenv.exe等。)。

答案 1 :(得分:0)

您也可以使用SetCapture。虽然与钩子相比它的功能有限,但请查看它。