ClickOnce发布

今天在发布ClickOnce提示:错误    8    签名时出错: 未能给 bin/Debug/app.publish//setup.exe 签名。SignTool Error: ISignedCode::Sign returned error: 0x80880253,The signer's certificate is not valid for signing.SignTool Error: An error occurred while attempting to sign: bin/Debug/app.publish//setup.exe    MainFrame,之前没有遇到过;

上网一查原来是数字签名证书的日期已过期,需要重新生成一个签名证书;

 

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

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

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

备注:弹出私钥密码对话框,按提示设置私钥密码(也可以不使用密码),后面将会用到这个密码;

 

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

cert2spc myselfName.cer myselfName.spc

 

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

pvkimprt -pfx myselfName.spc myselfName.pvk

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

备注:需要安装过pvkimprt工具后,才使用上面的命令,否则在SDK中执行上面的命令将无法成功;

 

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

 

pvkimprt工具下载地址如下
http://download.microsoft.com/download/vba50/Utility/1.0/NT5/EN-US/pvkimprt.exe

这个pvkimprt.exe 是需要解压的,默认解到压C:/DOCUME~1/tzj/LOCALS~1/Temp文件夹,解压过后找到pvkimprt.exe文件双击安装;

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值