2012-04-16 67 views
0

我已經構建了一個應用程序,用於偵聽全局熱鍵(當前爲Alt +空格鍵),當我按下熱鍵時Google Chrome處於焦點狀態,它將使我的應用程序專注,同時打開Chrome的上下文菜單(右鍵菜單)。我使用下面的dll爲implementing the keyboard hook全球熱鍵 - C#

我可以防止這種情況發生嗎?如果是這樣如何?這不是一個主要問題,但如果有一種方法可以清除與該組合關聯的所有現有熱鍵,那麼我想知道這一點。

編輯

,我選擇作爲一個正確的答案,是正確的,但我的問題。要正確實現此功能爲C#WinForm的我用這個教程,是非常有益的:http://www.dreamincode.net/forums/topic/180436-global-hotkeys/

+2

「執行鍵盤掛鉤」這是你的問題。使用'RegisterHotkey'而不是濫用鍵盤鉤子。有一些重複:http://stackoverflow.com/search?q=user%3A445517+registerhotkey&submit=search – CodesInChaos 2012-04-16 17:49:16

+0

@CodeInChaos只是實施了RegisterHotkey方法到我的應用程序更清潔的方法,將更新我的問題與您的建議。謝謝 – Nate 2012-06-18 16:59:37

回答

2

鏈接的文章的常見問題解答部分包含你的答案:

問題

我需要在處理它們之後抑制一些擊鍵。

回答

就在你 處理關鍵事件的e.Handled屬性設置爲true。它可以防止其他 應用程序處理的擊鍵。

+0

多麼愚蠢的我,感謝您花時間! – Nate 2012-04-16 17:51:18

+0

解決了眼前的問題,但顯然仍然是錯誤的解決方案。 – CodesInChaos 2012-04-16 17:52:14

+0

@CodeInChaos - 當然,但我回答了問題。這個問題非常直接。我實際上正在寫一條評論來支持你使用'RegisterHotkey'的建議。我想現在沒必要。 – 2012-04-16 17:55:28