日期:2014-05-19  浏览次数:21089 次

ClickOnce部署问题
ClickOnce进行部署的时候使用了签名
如果每次发布都是由同一台机器进行(使用相同的签名),用户可以自动更新
但是如果现在使用另外的机器进行编译,并且进行发布,用户更新的时候就会出现一个对话框: "无法启动应用程序.应用程序下载未成功....... ".用户不能对程序进行正常更新.请问这个问题怎么解决~

------解决方案--------------------
你生成一个证书文件,每次发布的时候都使用一个证书发布就可以了

创建证书步骤如下:
打开Microsoft .NET Framework 的SDK命令提示,按以下步骤操作:

1、创建一个自我签署的X.509证书(.cer)和一个.pvk私钥文件,用到makecert工具,命令如下:

makecert -r -n "CN= cncxz " -b 01/01/2005 -e 01/01/2018 -sv myselfName.pvk myselfName.cer

按提示设置私钥密码(也可以不使用密码)即可在当前目录生成相关文件

2、利用X.509证书(.cer)创建发行者证书 (.spc),用到cert2spc工具,命令如下:

cert2spc myselfName.cer myselfName.spc

3、从.pvk和.spc格式转换成.pfx格式,用到pvkimprt工具,命令如下:

pvkimprt -pfx myselfName.spc myselfName.pvk

按提示操作可导出.pfx证书,若第1步设置了私钥密码,此处需要输入验证

4、在vs项目的ClickOnce清单签名的证书设置处点击“从文件选择”浏览定位到第3步导出的.pfx证书,此处需要验证第3步中设置的证书私钥密码。


相关工具网上搜索一下