[英]How can I listen to mouse events of other processes
是否可以在 C# 中偵聽發送到其他進程中的其他窗口的與鼠標相關的窗口消息?
codeplex 中有一個開源項目
應用程序和全局鼠標和鍵盤掛鈎 C# 中的 .Net 庫
如果您想自己執行此操作,請在Windows Hooks
上進行一些額外的搜索
這篇文章展示了如何
你可以看看Codeplex Application 和 Global Mouse and Keyboard Hooks 庫
這個庫附加到 windows 全局鈎子,跟蹤鍵盤和鼠標的點擊和移動,並使用 KeyEventArgs 和 MouseEventArgs 引發常見的 .NET 事件,因此您可以輕松檢索您需要的任何信息:
鼠標坐標
單擊鼠標按鈕
鼠標滾輪滾動
按鍵按下和釋放
特殊鍵狀態
從上面的鏈接文檔:
在開始之前,重要的是要知道掛鈎術語可以並且將可以互換使用。 全局鈎子也稱為系統或系統范圍的鈎子,將涵蓋整個操作系統。 應用鈎子通常被稱為本地,因為顧名思義,它只會對應放置鈎子的單個應用程序(或特定線程)。
沒有管理的方法可以做到這一點。 但是,使用 Windows Api,這是可能的:
這應該對你有幫助。
捕獲 WM_MOUSEMOVE 將是一個好的開始http://msdn.microsoft.com/en-us/library/windows/desktop/ms645616(v=vs.85).aspx
但是還有其他與鼠標相關的窗口消息。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.