我的詳細資料:運行Windows CE 4.2,Compact Framework 2.0 SP1的自定義移動設備。 C#應用程序正在使用P/Invokes,直到現在沒有任何問題。在.NET CF 2.0中,全局鍵盤鉤子是否會干擾需要按鍵的P/Invokes?
我寫了一個低級別的鍵盤鉤子(與this CodeProject post相似但不完全相同),它奇妙地工作,但有一個例外。我們的軟件所做的一件事就是允許訪問Windows CE的屏幕校準功能;這是您需要點擊一系列目標的屏幕,最後按Esc取消或Enter接受。我們稱這個功能爲via a P/Invoke,我認爲在這個Win32 API函數中發生的按鍵受到我的鍵盤鉤子的干擾。
我的鍵盤鉤子並沒有做任何事情,也沒有改變執行流程,但我認爲這兩者的使用可能從根本上不兼容。在運行此屏幕後,當我退出調試器時,當程序關閉時,我一次嘗試全部「敲擊」的所有Enter鍵(此設備會產生點擊噪音)。這讓我認爲鉤子沒有正確地將按鍵傳遞給Win32 API函數,而是正確地將它傳遞給.NET應用程序。有什麼想法嗎?
你認爲:
一)鍵盤鉤子和鍵盤,需要P /調用不兼容,或
B)我的實現鍵盤鉤子的是難辭其咎的,或者
C)它取決於在所有在硬件製造商,驅動程序等?
感謝您的幫助!
>你的意思是你在代碼中調用TouchCalibrate,然後停止調試,然後發送消息? 這就是我的意思。我知道按鍵到達了我的鉤子,但是就好像掛鉤沒有將它傳遞給TouchCalibrate。 我會查看平臺生成器。另外,非常喜歡OpenNetCF! <3 – 2008-12-04 23:36:06