簡體   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