我正在开发一个虚拟驱动程序,QA需要检查几台 Windows 7 机器上的 x64 版本。我已严格按照为测试目的生成证书的说明,但我仍然有一些问题。所以,我已经完成了以下步骤:
Makecert -r -pe -n "CN=TestCertForWDK" -ss "TestCert" mccert.cer
我在安装程序中添加了以下两行以在远程机器上进行自动证书安装
certmgr.exe -add mccert.cer -s -r localMachine root
certmgr.exe -add mccert.cer -s -r localMachine trustedpublisher
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 成功”,但设备管理器中的设备标有黄色感叹号(不可信签名)。
后来,我尝试使用 hdwwiz - 当我手动输入驱动程序的路径(有磁盘)时 - hdwwiz 显示驱动程序具有签名并且安装继续进行而没有任何警告。但在那之后,正如我已经提到的那样,由于签名无效(黄色“!”),设备无法正常工作
我在Winqual上有一个帐户,但驱动程序仍处于开发状态,我还不想为提交付费。难道我做错了什么?是否可以使用我自己生成的证书安装 x64 驱动程序并且makecert.exe不禁用最终用户 PC 上的驱动程序签名(这对我来说是不可接受的)?