3

使用 MSBuild 发布 ClickOnce 应用程序时出现以下错误。我有一个发布前任务,它在发布之前将正确的 app.config 文件复制到项目中,这是我认为可能导致此错误的唯一原因。我该如何纠正?

检测到以下失败消息:文件 MyApplication.exe.config 的计算哈希值与清单中指定的不同。

4

3 回答 3

4

您在生成哈希后复制文件。

您需要在 BUILD 期间和 PUBLISH 之前复制文件。ClickOnce 机制认为存在篡改。

于 2009-12-16T21:54:16.140 回答
3

Brett 的回答是正确的,GenerateManifests目标在CoreBuild目标(在 Microsoft.Common.targets 中)的中间运行,因此更新构建文件的最佳位置是在BeforeBuild中。

我猜您切换 app.config 的原因是将配置替换为对您要发布的环境也具有正确值的配置?如果是这种情况,请阅读我发布到多个环境的帖子......将有助于回答诸如“如何覆盖 BeforeBuild 目标?”之类的问题。

于 2010-02-01T01:15:10.473 回答
1

在项目属性的签名选项卡下签署单击一次清单并(重新)为您的应用程序创建一个测试证书......这为我解决了问题。祝你好运

于 2010-06-18T10:27:34.660 回答