由于我们的应用程序在全屏模式下运行,我们开发了一个键盘钩子驱动程序来禁用用户对ALT+F4、CTRL+ALT+DEL等键的输入。
该驱动程序是使用Windows驱动程序包用C语言开发的。
32位编译工作,它加载驱动程序在Windos 7 32位和它的预期工作。
64位编译可以工作,它只是不加载Windows7 64位上的驱动程序(但在键盘驱动程序中有签名并列出)。
以下是我们的SetEnv设置:
setenv c:\WinDDK\7600.16385.1 fre x64我是不是漏掉了什么?
我是否需要对代码进行特定的更改才能使其在64位上工作?
发布于 2010-09-24 08:30:59
build选项看起来是正确的。你不需要修改代码,除非代码假设了指针、整数等的大小。通过乱弄注册表等来“安装”驱动程序的脚本可能无法工作。
Win7 64位中的驱动程序需要是由微软签署的WHQL测试,由您自己签署的测试,或使用可信证书签署的。
第一个只是安装。第二个需要使用测试签名配置选项进行引导。第三个将在您安装时显示警告,询问您是否信任该提供程序。
通常,在开发过程中,需要对驱动程序进行测试签名:MSDN instructions on test signing a driver package
https://stackoverflow.com/questions/3179972
复制相似问题