所以,我想我必须在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