繁体   English   中英

C# 将鼠标事件转发到另一个 window 而不会失去焦点

[英]C# forward mouse events to another window without losing focus

我的应用程序截屏了另一个 window,它在第二台显示器上运行。 现在我还想将我的应用程序中的鼠标点击转发到 window。 为此,我尝试在user32.dll中使用SendMessage ,但这也会导致 window 焦点切换,这会导致一些问题,例如两个 windows 快速争夺焦点。 有没有办法在不激活隐藏的 window 并失去对主应用程序的关注的情况下放置这些鼠标事件?

有没有办法在不激活隐藏的 window 并失去对主应用程序的关注的情况下放置这些鼠标事件?

不,甚至没有办法将鼠标输入转发到另一个接收器。 消息只是输入处理的一部分。 该系统还进行内部簿记,您无法复制它。

注入输入的唯一可靠方法是调用SendInput 这样做不允许您指定接收者。 输入转到系统确定为接收者的任何线程。

虽然,当需要解决的问题完全不同时,通常会问这个问题:如何自动化 UI? 这个问题的答案是UI Automation

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM