我正在尝试使用Makecert.exe创建一个签名证书,我可以使用我们的内部VS.NET应用程序,使用我们本地网络上的 Clickonce 进行部署
我一直关注MSDN指南MSDN: Certificate Expiration in ClickOnce Deployment
所以我尝试了以下内容:
C:\Program Files (x86)\Microsoft Visual Studio 12.0>Makecert -sv DMTeam.pvk
-n "CN=DMTeam" DMTeam.cer -b 03/04/2015 -e 12/31/2020
为我们的应用程序提供证书
当我使用VS命令提示符运行上述命令时,出现以下错误:
错误:无法为主题创建文件('DMTeam.pvk')
错误:无法创建主题的键('DMTeam.pvk')
失败
那么我做错了什么?
答案 0 :(得分:7)
关键是使用管理员权限运行命令提示符。
我做了一些非常相似的事情,虽然我把pvk和cer文件写到我的c:\ Temp文件夹中:
C:\ Program Files(x86)\ Microsoft SDKs \ Windows \ v7.1A \ Bin> MakeCert -sv C:\ Temp \ DMTeam.pvk -n“CN = DMTeam”c:\ Temp \ DMTeam.cer - b 03/04/2015 -e 12/31/2020 -r
别忘了" -r"选项,因为它将"创建一个自签名证书"!没有它,当您使用创建的pfx文件时,项目将无法构建。
我在VS2012 x86 Native Tools命令提示符(以管理员身份运行)下运行它,它运行正常。运行时没有管理员权限,然后失败。
然后要创建pfx文件,请执行以下操作:
C:\ Program Files(x86)\ Microsoft SDKs \ Windows \ v7.1A \ Bin&gt; pvk2pfx -pvk C:\ Temp \ DMTeam.pvk -spc C:\ Temp \ DMTeam.cer -pfx -po PasswordForPFXFile < / p>
以下是一些很好的参考资料: 请参阅:测试证书,MakeCert,RenewCert和大解决方案部分 https://msdn.microsoft.com/en-us/library/ff369721.aspx
https://msdn.microsoft.com/en-us/library/bfsktky3(v=vs.110).aspx
ClickOnce signer's certificate not valid for signing when using makecer/pvk2pfx
我的ClickOnce应用程序现在可以在Visual Studio 2013中正常构建。