在自己的电脑上做的程序,运行都正常,怎么把这个程序转到别的电脑上,在运行就出现提示如上的错误:
一般情况系,证书签名在项目编码阶段都是用不到的。它的用处是在项目发布的时候用。
这是由于在自己电脑上建的项目解决方案,换到另一台电脑上的开发环境后,编译会出现错误信息。
这里有一个最简单的方法:
1.在该解决方案的启动项处点属性。
2.在该属性中,取消点击“为ClickOnce清单签名”。
3.重新生成就解决了上述问题。
下面是网上的其它两个方法,是从代码角度解决的:
第一种办法:用记事本打开对应csproj文件。将
change " <SignManifests>true</SignManifests> " to "<SignManifests>false</SignManifests>".
that's ok!
第二种办法:
在vs2005中出现“无法在证书存储区中找到清单签名证书”,解决办法是用记事本打开项目的.csproj文件,删除类似以下xml就能顺利通过编译了
<ManifestCertificateThumbprint>B531F2CF222748C5E29308FC2247704827D1EA8C</ManifestCertificateThumbprint>
<ManifestKeyFile>xxxx_TemporaryKey.pfx</ManifestKeyFile>
<GenerateManifests>true</GenerateManifests>
<SignManifests>true</SignManifests>
<PublishUrl>D:\xxx\bin\</PublishUrl>
<Install>true</Install>
<InstallFrom>Disk</InstallFrom>
<UpdateEnabled>false</UpdateEnabled>
<UpdateMode>Foreground</UpdateMode>
<UpdateInterval>7</UpdateInterval>
<UpdateIntervalUnits>Days</UpdateIntervalUnits>
<UpdatePeriodically>false</UpdatePeriodically>
<UpdateRequired>false</UpdateRequired>
<MapFileExtensions>true</MapFileExtensions>
<CreateWebPageOnPublish>false</CreateWebPageOnPublish>
<ApplicationVersion>1.0.0.%2a</ApplicationVersion>
<IsWebBootstrapper>false</IsWebBootstrapper>
<BootstrapperEnabled>true</BootstrapperEnabled>