如何在 Post 构建事件中签署 ClickOnce 应用程序?

How to sign ClickOnce application in Post Build Event?

我有通过 ClickOnce 部署的 WinForms 应用程序。 我有 Post 生成事件,它使用 SignTool 对我的程序集进行签名。 我将应用程序发布为 ClickOnce 安装程序,我在 VS 输出中看到文件已签名,但安装后没有签名的程序集。 如何签署将包含在 ClickOnce 包中的程序集?

感谢Mate

我终于做到了!如文章 here

中所述,我将目标添加到 *.cproj 文件

看起来像:

<Target Name="AfterCompile">
<Exec Command="&quot;C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Bin\SignTool.exe&quot; sign /f cert.pfx /p your_password /v &quot;$(ProjectDir)obj/$(ConfigurationName)/$(TargetFileName)&quot;" />
</Target>

obj目录下有签名的*.exe文件。我还使用 AfterCompile 目标,因为在尝试 BeforePublish 目标时我遇到了应用程序清单问题。

这在 VS2022 中得到了显着缓解

将 PFX 添加到您的证书存储区

然后将以下行添加到 Post-Build Events