关键是使用管理员权限运行命令提示符。
我做了一些非常相似的事情,尽管我将 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>pvk2pfx –pvk C:\Temp\DMTeam.pvk –spc C:\Temp\DMTeam.cer –pfx –po PasswordForPFXFile
以下是一些很好的参考资料:请参阅部分:测试证书、MakeCert、RenewCert 和大变通方法
https://msdn.microsoft.com/en-us/library/ff369721.aspx
https://msdn.microsoft.com/en-us/library/bfsktky3(v=vs.110).aspx
使用 makecer/pvk2pfx 时,ClickOnce 签名者的证书对签名无效
我的 ClickOnce 应用现在可以在 Visual Studio 2013 中正常构建。