我正在学习 Windows 内核模式驱动程序开发。我编写了一个小型测试驱动程序,可以在 VirtualBox 中的 VM 下运行的 Windows 7 32 位 Ultima 版本下成功注册、取消注册、加载和卸载。
我的主机是Windows 7 64位家庭高级版。
该驱动程序专为 64 位编译,无法在 Windows 7 家庭版下加载。我不断收到拒绝通知,指出此版本的 Windows 不允许未签名的驱动程序。
我尝试过两件事:
我使用 F8 启动选项来允许未签名的驱动程序(不起作用)
-
我以管理员身份运行CMD并执行以下两个命令
bcdedit.exe -set loadoptions DDISABLE_INTEGRITY_CHECKS
bcdedit.exe -设置测试签名打开
并重新启动。我的桌面显示我处于“测试模式”,但我仍然注意到同样的拒绝。
谁能在这里帮助我或解释一下家庭版是否有额外的步骤?
- - { 更新 } - -
在翻阅了大量 MSDN 内容后,我的解决方案似乎是对我创建的驱动程序进行自签名。我下载的DDK似乎没有进行自签名的工具链。我已经下载了WinDDK-7600.16385.1。但奇怪的是,如果我在启动时简单按 F8 并告诉它允许未签名的驱动程序,我的 Windows Ultima Edition 就会愉快地加载我的驱动程序。
你可以尝试驱动程序签名强制覆盖 http://www.ngohq.com/home.php?page=dseo.它在 64 位版本的 Windows 7 上受支持,并且我看到的报告证实它确实可以在“Home Premium”版本上运行。
从下面的链接下载该应用程序。右键单击它并
选择“以管理员身份运行”。里面
在其主菜单中,按“启用
测试模式”按钮并按照
屏幕上的说明。这会
启用 TESTSIGNING 模式,该模式允许
要加载未经验证的系统文件。
现在您所要做的就是将未经验证的签名添加到
所需的系统文件。为此,请按
在“签署系统文件”按钮上
从主菜单中,输入特定的
文件名,包括完整路径。为了
示例:如果 ATITool64.sys 来自
C:\Windows\System32\drivers 拒绝
由于驱动程序签名而加载
强制执行,您应该输入:
“C:\Windows\System32\drivers\ATITool64.sys”,
如果您想签署更多
不是单个文件,只需重复此操作
程序直到完成为止,并且
最后重新启动。
启用测试模式并添加后
所需系统的签名
文件,它们应该绕过 Windows
驱动程序签名强制执行和加载
没有任何问题。然而,如果对于
您感兴趣的某些原因
恢复它,您可以重新启动
应用程序,选择“禁用测试
从主菜单中选择“模式”,然后重新启动。
如果您遇到问题或有
如有疑问,请随时将其发布在我们的
论坛。
Note:DSEO 需要行政管理
权限(以管理员身份运行)。
它甚至允许您从桌面上删除水印!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)