在C#中捕获并发送键盘/鼠标输入

时间:2009-07-11 04:28:19

标签: c# api events keyboard mouse

我正在寻找一种发送和接收键盘信息的方法,无论应用具有什么焦点。我记得在大学时看过一个关于旧Windows API的演示文稿,它可以让你改变光标位置并发送正确的点击等。

除了User32.dll还有办法用.net框架吗?

2 个答案:

答案 0 :(得分:9)

AFAIK,没有办法捕获GLOBAL键盘&鼠标事件。但是有一些关于CodeProject的文章,它们演示了.NET类包装器的创建。

你可以在这里查看:

1)Processing Global Mouse and Keyboard Hooks in C#

2)Global Mouse and Keyboard Library

编辑:BTW,我使用第一个库在C#中创建了一个SMALL键盘记录器:)

答案 1 :(得分:4)

几个月前,我使用C#创建了一个从wii双节棍中读取并移动鼠标的应用程序。我的第一个选择是使用游标Class来像这样移动鼠标

Cursor.Position = new Point(Cursor.Position.X + 10, Cursor.Position.Y + 10);

一切都很好,但是在玩游戏时没有用,因为他们以不同的方式管理鼠标,所以最后我使用了Kirtan在这里提到的Global Hooks(+1)。根据我的经验,我建议你使用Global Hooks。