论文部分内容阅读
随着硬件技术快速发展,与硬件相关的设备驱动程序开发已成为信息技术发展中一个重要组成部分,没有设备驱动程序这个桥梁,新硬件功能特性不可能被充分发挥利用,更不可能快速被人们接纳、普及及推广使用。论文对专用多媒体键盘驱动程序(以下简称为KBDrvApp)及通用多媒体键盘驱动程序(以下简称为GenKBDrv)深入研究,其中,专用多媒体键盘驱动程序是通用多媒体键盘驱动程序研究开发的基础。对两种驱动程序的研究开发充分证明:利用驱动程序开发技术可以发挥硬件设备潜在功能,使硬件设备更好服务于最终用户。
KBDrvApp驱动程序是专为某种型号的多媒体键盘定制开发,在实现过程中,采用了VxD、WDM及WDF三大Windows平台中常用的驱动程序开发技术,使最终发布的多媒体键盘驱动程序可以在Windows 98/Me/2000/XP/2003/Vista操作系统上运行。KBDrvApp驱动程序在屏蔽键盘附加键系统默认功能的基础上,采用菜单加速键、菜单助记符并辅之利用窗口菜单句柄的方法成功实现一键控制多浏览器及媒体播放器功能,成功解决了当前市场上多媒体键盘驱动程序无法控制多个浏览器及多个媒体播放器等缺点。另外,该驱动程序利用窗口旬柄存取方法实现后台控制常用媒体播放器功能,利用菜单加速键或菜单助记符,实现将因特网键及媒体播放器控制键变成Word、Excle等软件的菜单加速键,大大可以减少用户记忆负担,方便用户的快捷操作电脑。为了操作灵活性,KBDrvApp还提供相应的应用程序设置等模块,方便高级用户自定义各个扩展键功能,充分发挥多媒体键盘附加键的潜在功能。
针对目前部分键盘厂商重复开发功能上大同小异的多媒体键盘驱动程序情况,论文在KBDrvApp专用驱动程序基础上,提出通用多媒体键盘驱动程序概念,并通过解决驱动程序自动识别读写键盘扫描码及通用化安装这两大开发中难题,最终成功开发出通用多媒体键盘驱动程序。在实现过程中,通过采用将GenKBDrv驱动程序作为类过滤驱动程序的安装方法,解决了通用化安装问题,通过灵活构造存取键盘扫描码字符串的方式,解决自动识别读写键盘扫描码问题。GenKBDrv驱动程序也提供相应的应用程序设置模块,用户可为键盘附加键或标准键设置不同的功能,如可以设置为命令键(可以为全局热键,菜单加速键或菜单助记符等)或设置为启动某种应用程序的快捷键或重映射其它键功能,解决了某些游戏或应用软件中对键盘使用上的限制,还可以使普通键盘具有多媒体键盘特有的功能。为体现“通用”的特点,GenKBDrv驱动程序没有针对特定厂家的键盘开发,通过简单设置可将该驱动程序适用于不同厂家生产的多媒体键盘或普通键盘,这样很大程度上减少重复开发的浪费,具有一定的市场推广价值。