我正在尝试使用 Windows DDK 8.1 和 VS 2013 对驱动程序进行签名,但我不断收到相同的错误。但是,当我尝试对 DDK 8.0 做同样的事情时,它工作得很好。
为了确保这不是我所做的事情,我从 MSDN 下载了一个示例驱动程序并尝试构建它。下载的示例会导致相同的错误。
以下是使用 8.0 套件版本的示例输出:
C:\Program Files (x86)\Windows Kits>8.0\bin\x86\Inf2Cat.exe /os:8_x64 "/driver:C:\code\NDIS\C++\x64\Win8Release\package"
..................................................
Signability test complete.
Errors:
None
Warnings:
None
Catalog generation complete.
C:\code\NDIS\C++\x64\Win8Release\package\netvmini60.cat
C:\code\NDIS\C++\x64\Win8Release\package\netvmini620.cat
C:\code\NDIS\C++\x64\Win8Release\package\netvmini630.cat
这是使用 8.1 套件的完全相同的命令(为便于阅读添加了包装):
C:\Program Files (x86)\Windows Kits>8.1\bin\x86\Inf2Cat.exe /os:8_x64 "/driver:C:\code\NDIS\C++\x64\Win8Release\package"
......................
The integrity check for the Windows file protection data file
'C:\Program Files (x86)\Windows Kits\8.1\bin\x86\WindowsProtectedFiles.xml'
has failed. This is most likely due to a modification of the file's contents.
To fix the problem, obtain a valid copy of the file from Microsoft, restore
the file to its original state, or reinstall the application.
Signability test failed.
当我使用 Visual Studio 时,出现以下错误:
TRACKER : error TRK0002: Failed to execute command: ""C:\Program Files
(x86)\Windows Kits\8.1\bin\x86\inf2cat.exe" /os:7_x64 /driver:C:\code\NDIS\C++
x64\Win7Release\package\". The handle is invalid.
我检查了WindowsProtectedFiles.xml
错误中提到的文件的内容,看起来该文件在 8.0 和 8.1 之间没有更改。我已经搜索了另一个版本,但找不到任何东西。重新安装 DDk 也不能解决任何问题。
谁能提供一些关于为什么会发生这种情况以及我如何解决它的见解?
谢谢你。