所以,我想我必須在C++中做到這一點,任何人都知道這個問題?我已經到處搜索,並且發現了一些關於windows ce的鍵盤鉤子的文章,windows mobile是windows ce,不是嗎? 另一個問題:哪些免費的編譯器,ide for windows mobile我可以使用?windows mobile 5或更高版本(智能手機平臺)全球鍵盤掛鉤,怎麼樣?
0
A
回答
1
SetWindowsHookEx在任何WindowsCE(讀取:Mobile)版本上都不受支持。事實上,鉤子通常不被支持。
但是,如果您願意使用無文檔/不受支持的API,則可以將SetWindowsHookEx從coredll.dll中取出,並在適當的Windows上調用它。你想WH_KEYBOARD_LL,這一點谷歌搜索說是20
你實際上需要拔出指針,以下列方法:SetWindowsHookEx,CallNextHookEx和UnhookWindowsHookEx。
您的代碼將類似於(這是未經測試):
//myHook.dll
LRESULT myLowLevelKeyboardProc(int nCode, WPARAM wParam, LPARAM lParam)
{
//You'll need to pull a reference to CallNextHookEx out of coredll as well
if(nCode < 0) return CallNextHookEx(nCode, wParam, lParam);
KBDLLHOOKSTRUCT data = *((PKBDLLHOOKSTRUCT)lParam);
//Do something with data
return CallNextHookEx(nCode, wParam, lParam);
}
//Main Code, which ignores all the nasty function pointers you'd ACTUALLY have to use to do this
...
HHOOK hook = SetWindowsHookEx(WH_KEYBOARD_LL, pMyLowLevelKeyboardProc, hMyHookDll, 0);
...
//Some point in the future
UnhookWindowsHookEx(hook);
我會強烈建議反對這種但是。我非常懷疑這個代碼將繼續適用於所有未來版本的Windows Mobile。考慮一些其他的方法來實現你實際上的任何事情。
我不能說我對免費的編譯器或IDE有任何建議。除了Visual Studio for C/C++之外的任何東西總是讓我感到非常沮喪。我認爲這更多反映了我的習慣,而不是其他工具的評論。
0
http://www.naresh.se/2009/09/08/getkeyboardstate-mousehooks-not-available-in-windows-mobile/
按照上面的網址。它具有所需的代碼,在Windows Mobile和Windows CE上工作,也有一個很好的解釋以及進一步討論的論壇...
忘記說,代碼是在C#中的一些其他用戶...
相關問題
- 1. 本地html文件的Windows Mobile 5智能手機DNS錯誤
- 2. 全局鍵盤掛鉤停止腳本
- 3. 什麼會導致Windows取消掛鉤低級(全局)鍵盤掛鉤?
- 4. Windows鍵盤掛鉤掛起調試器
- 5. 全局鍵盤掛鉤工作,但全局shell掛鉤失敗
- 6. 智能手機作爲開發平臺?
- 7. 全局鍵盤掛鉤不工作
- 8. 在Vista和更高版本上的系統寬鍵盤鉤子
- 9. Java鍵盤掛鉤
- 10. 全局鍵盤掛鉤OSX 10.10.3
- 11. 全局鍵盤掛鉤不工作
- 12. 按了什麼鍵?鍵盤掛鉤
- 13. 掛鉤Windows Mobile 6.5手機開/關按鈕
- 14. 如何掛鉤windows鍵盤ISR?
- 15. Windows中的JNA鍵盤掛鉤
- 16. 鍵盤掛鉤存儲鍵
- 17. Android:智能手機或平板電腦
- 18. Qt多平臺怎麼樣
- 19. 低級鍵盤掛鉤
- 20. 移動網站跨平臺支持智能手機
- 21. 全局鍵盤掛鉤的合法用途是什麼?
- 22. 全局鍵盤鉤
- 23. 鍵盤掛鉤:更改密鑰代碼
- 24. 掛鉤鍵盤更改密鑰代碼
- 25. SetParent掛鉤,你怎麼解除掛鉤?
- 26. 如何創建跨平臺的智能手機應用程序?
- 27. 「智能」元素的掛鉤
- 28. 什麼平臺只需要一個代碼並且適用於全球所有智能手機?
- 29. 檢測鍵盤掛鉤
- 30. 鍵盤掛鉤問題
我可以在c#和本地dll調用中使用它嗎? – StoneHeart 2009-06-30 06:23:50