如何将项目发布到文件夹并签名

How to publish project to folder and sign

我有一个包含控制台(或 Winform)应用程序的解决方案,我使用 Visual Studio 发布到文件夹

我的问题是我们需要签署(证明)*.EXE 文件。 目前我手动这样做。我没有使用 ClickOnce,也没有设置项目。

有没有办法发布到文件夹并立即签署生成的 *.exe 文件?

使用“SignTool”进行签名: https://docs.microsoft.com/en-us/dotnet/framework/tools/signtool-exe

编辑您的 *.csproj 文件并添加如下代码:

<Target Name="CustomAfterPublish" AfterTargets="Publish">
            <Message Text="Sign Publish EXE"      />
            <Exec Command="call c:\SignTool\signtool.exe sign /tr http://timestamp.digicert.com /td sha256 /fd sha256 /f c:\YourSingFolder\YourCertificate.pfx $(PublishDir)$(TargetName).exe" />
</Target>

这里有一些背景信息:After Publish event in Visual Studio