拦截华硕笔记本电脑上的媒体键
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了拦截华硕笔记本电脑上的媒体键相关的知识,希望对你有一定的参考价值。
我有一台华硕笔记本电脑(F50SF),我正在玩C ++试图拦截多媒体键(下一首音轨,上一首曲目,播放/暂停等),但我无法弄明白该怎么做。我试过GetAsyncKeyState(VK_MEDIA_NEXT_TRACK)
但无济于事。
我知道它是可能的(并且键首先工作)因为这些键在Windows Media Player中工作正常。
有任何想法吗?
问题是Asus提供的ATK Media实用程序完全被锁定,而不是发出键盘事件(如普通媒体键),它将它们映射到特定的应用程序。它寻找的应用程序的顺序和名称根据版本和系统而变化,但幸运的是有一个修复!
经过一段时间阅读一堆网站,我刚刚遇到了解决方案。
- 从这篇博客文章下载rar软件包:http://3mptylab.blogspot.it/2012/09/how-to-make-asus-notebooks-media-keys.html
- 停止当前的DMedia.exe进程。
- 转到您的ATK Media安装文件夹(通常是C: Program Files(x86) ASUS ATK Package ATK Media)并将DMedia.exe重命名为DMedia.exe.old(只是为了安全起见)。
- 将您在RAR中找到的DMedia.exe放入ATK Media目录。双击它来运行它,但无论如何它都会在启动时运行。
- 检查媒体键是否正常工作。如果有效,可以去喝啤酒或看电影!
我刚刚在Win8 Pro 64位下的华硕U30Jc中进行了测试,效果很好!此工具实际上将通用键盘事件映射到集成键盘中的媒体键,因此它们适用于为此启用的任何应用程序(在某些情况下,如Winamp,您可能需要启用全局键)。
我在autohotkey http://www.autohotkey.com/forum/viewtopic.php?p=302923发现了这个宝石,它帮助我在我的笔记本上映射网络,邮件,P1和P2按钮,否则需要一些英国媒体中心软件重新映射它们。它不是C ++,但它可以通过查找扫描代码帮助您找到正确的方向!
有些笔记本电脑(如我的华硕M51Sn)不会为特殊(多媒体)键生成按键。我相信这些密钥会生成ACPI事件。我不知道如何抓住这些。 : -
如果你想看看我已经测试过的东西,请看看my question at SuperUser。
Google代码中有一个项目禁用(截取)指定某些键的击键。
它是用C语言编写的,但是如果你仔细阅读代码,你可以学习一种方法。
以上是关于拦截华硕笔记本电脑上的媒体键的主要内容,如果未能解决你的问题,请参考以下文章