编程语言
首页 > 编程语言> > 如何将鼠标事件传递给我在C#/ Vista中的应用程序?

如何将鼠标事件传递给我在C#/ Vista中的应用程序?

作者:互联网

我正在C#中编写一个非常专业的应用程序,它作为整个桌面上的一个大多数透明窗口浮动.我希望能够创建鼠标事件并将其传递给我后面的应用程序,并使它们看起来“正常”运行,以响应这些事件.如果窗口管理器可以响应,那也是更好的选择.

我不是Windows大师,也不确定如何最好地实现这一目标.

从这个页面:
http://bytes.com/forum/thread270002.html

似乎mouse_event会很好,除了因为我的应用程序浮动其他所有内容,我猜我生成的事件永远不会进入下面的其他应用程序.

似乎替代方案是SendMessage,但这需要大量手动操作窗口,并且生成的鼠标事件不是“真实的”.

有关最佳方法的任何想法吗?

解决方法:

听起来你想要做一些过滤用户输入的事情.

也许你只需要一个键盘/鼠标钩.

您可能想看一下windows API调用SetWindowsHookEx.

应该有足够的样本如何在C#中做到这一点,我发现的第一件事是this link(也许不是最好的文章,但应该给你的想法).

标签:c,events,windows-vista,mouse
来源: https://codeday.me/bug/20190622/1260987.html