签署所有使用 ClickOnce 正确发布的文件

Signing all files correctly published with ClickOnce

我们 运行 在通过 ClickOnce 安装我们的应用程序时遇到了一些麻烦。

我们拥有一个 Verisign 证书,我们使用该证书使用 VisualStudio 中的选项对 ClickOnce 安装程序进行签名。这在应用程序的第一次安装期间按预期工作,Windows 询问我们是否确定安装,但显示我们公司是证书中预期的发布者。

但是安装的文件没有签名。在我们的一些客户机器上,在第一次安全检查之后,windows 抛出另一个警告,关于安装的应用程序-exe 的名称,说发布者未知。

我们尝试通过 postbuld 命令对 opt-folder 中有问题的 exe 文件进行签名,该命令确实对它们进行了签名,但之后 clickonce 安装失败,声称文件的哈希值与哈希值不同在清单中。

在 ClickOnce 安装中签署所有 exe 和 dll 文件的正确方法是什么?

这是 WPF 应用程序吗?如果是这样,它的目标集和执行顺序与表单应用程序不同,这需要您使用 AfterCompile 命令而不是 PostBuild 命令。有关此主题的更多信息,请参阅 RobinDotNet 的 blog post