我的ClickOnce安装失败并显示错误:
File,WindowsFormsProject.exe具有与manifest中指定的不同的计算哈希值.
我使用MSBuild生成ClickOnce部署包.构建脚本中的相关行:
<MSBuild Targets="Publish"
Projects="WindowsFormsProject.csproj"
ContinueOnError="false" />
Run Code Online (Sandbox Code Playgroud)
WindowsFormsProject.csproj具有签署可执行文件的Post-Build步骤,如下所示:
signtool sign /a $(ProjectDir)\obj\$(PlatformName)\$(ConfigurationName)\$(TargetFileName)
Run Code Online (Sandbox Code Playgroud)
麻烦的是,当我查看构建日志时,我发现清单是在Post-Build事件执行之前生成的.因此哈希码不匹配就不足为奇了.构建日志中的相关行:
_CopyManifestFiles:
WindowsFormsProject - > ...\WindowsFormsProject.application
...
PostBuildEvent:
成功签名:...\WindowsFormsProject.exe
所以,问题是:
或者,如果你能想到问题的不同解决方案,我会很感激你的想法.