我从发布的Visual Studio 2012 ClickOnce应用程序,并选择了.NET 4.0运行时和Microsoft报表查看器2012年的先决条件。 我也选择从供应商的网站上下载的先决条件。
当我尝试在客户端PC上安装应用程序,我收到以下错误:
安装程序检测到文件“C:\用户\ MyUserName输入\应用程序数据\本地的\ Temp \ VSD537C.tmp \ DotNetFX40 \ dotNetFx40_Full_setup.exe”已经改变,因为它最初发表。
日志没有提供其他细节。
如果我手动安装.NET runtime,然后我收到了同样的错误的报告观众当我再次运行Setup.exe。
是什么原因导致这个错误,我如何防止它发生?
这是从微软下载的文件有什么比在引导程序配置文件(Product.xml)指定了不同的公共密钥。 至少他们中的一些VS 2012被释放,必须已经使用不同的密钥签字后已经出版。 我不得不提取数字签名证书的公钥,并用它来替换product.xml文件中指定的公钥。 在此之后,它工作得很好。
要提取公钥:
- 右键单击安装程序可执行文件,然后单击
Properties
。 - 单击
Digital Signatures
选项卡。 - 从列表中选择签名,然后单击
Details
按钮。 - 在
General
选项卡,单击View Certificate
按钮。 - 在
Certificate
窗口中,单击Details
选项卡,找到名为领域的Public Key
。 - 选中并复制数据。 您将需要运行一个查找/替换删除空格。
- 粘贴此键进入的公钥属性
Product.xml
此安装程序包文件。
文章来源: Error downloading prerequisites after publishing ClickOnce application from VS 2012