簡體   English   中英

如何監聽其他進程的鼠標事件

[英]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,這是可能的:

這應該對你有幫助。

C# - 從特定應用程序捕獲 Windows 消息

捕獲 WM_MOUSEMOVE 將是一個好的開始http://msdn.microsoft.com/en-us/library/windows/desktop/ms645616(v=vs.85).aspx

但是還有其他與鼠標相關的窗口消息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM