我可以安装带有测试证书的x64驱动程序而不禁用驱动程序签名吗?

时间:2011-04-18 04:47:54

标签: driver windows-7-x64 driver-signing

我正在开发一个虚拟驱动程序,QA需要检查几台Windows 7计算机上的x64版本。我严格按照生成证书的说明进行测试,但我仍然遇到一些问题。所以,我做了以下steps

Makecert -r -pe -n "CN=TestCertForWDK" -ss "TestCert" mccert.cer

我在安装程序中添加了以下two lines以在远程计算机上安装自动证书

certmgr.exe -add mccert.cer -s -r localMachine root
certmgr.exe -add mccert.cer -s -r localMachine trustedpublisher

And

Inf2cat.exe /driver:D:\Projects\MyDrv\package\ /os:7_X64

最后

signtool sign /a /v /s "TestCert" /n "TestCertForWDK" mydrv.cat
signtool sign /a /v /s "TestCert" /n "TestCertForWDK" mydrv.sys
顺便说一句,首先我尝试通过devcon进行安装。它报告“devcon成功”,但Device Manager中的设备标有黄色感叹号(不可信签名)。

后来,我尝试使用hdwwiz - 当我手动输入驱动程序的路径(有磁盘)时 - hdwwiz显示驱动程序有签名,安装过程没有任何警告。但在那之后,正如我已经提到的,由于签名无效,设备无法正常工作(黄色“!”)

我在Winqual有一个帐户,但是驱动程序仍然处于开发状态,我还不想为提交付款。难道我做错了什么?是否可以安装带有我自己的makecert.exe生成的证书的x64驱动程序和,而无需在最终用户PC上禁用驱动程序签名(这对我来说是不可接受的)?

1 个答案:

答案 0 :(得分:6)

不幸的是,你需要让微软交叉签名。有关详细信息,请参阅here

即使您想使用自己的测试证书,也需要使用BCDEdit tool进行更改。

bcdedit.exe {boot-entry-guid} testsigning on

这将允许您使用您的测试证书。这是使用测试证书的唯一方法。