如何在使用代码签名时包含整个证书路径signtool?
较旧版本的signtool将在数字签名中包含整个证书路径.现在如果我签署一个可执行文件signtool:
signtool.exe" sign /v /f avatar.pfx -t "http://timestamp.verisign.com/scripts/timstamp.dll" app.exe
Run Code Online (Sandbox Code Playgroud)
签名无效:
这是因为没有认证路径:

使用旧版本的signtool签名的二进制文件工作正常:

如何在签名时告诉signcode包含整个认证路径?
签署二进制文件的正确方法是什么?
更新:SignTool版本6.1.7600.16385:

我正在将数字签名应用于我的可执行文件.使用signtool在Windows XP或Windows Vista:
>signtool.exe sign /f "avatar.pfx" MyApp.exe
Run Code Online (Sandbox Code Playgroud)
自动将整个认证链包含在数字签名中.
与Windows 7启动整个证书链中 没有 再 列入.您必须手动包含以下证书:
我被告知我必须使用/ac带有该signtool实用程序的开关来执行此操作.
/ ac FileName
指定包含要添加到签名块的其他证书的文件.
如何获取签署证书的证书的文件名?
这更令人困惑,因为我没有任何这样的文件.我有我的数字签名可执行文件,没有嵌入式认证链:

Stackoverflow用户davidcl 有同样的问题.在这个自我回答的答案中,他说我需要
使用包含根证书,中间证书,开发人员证书和私钥的PFX文件进行签名.
创建适当的PFX文件后 - 这本身就是一个奥德赛......
但他没有说明他是如何创建包含整个认证链的PFX的.