我有一个VSTO加载项,我将从VS2010迁移到Visual Studio2019。但是,我忘记了附加到解决方案主项目的mypfx密钥的密码。
我现在正尝试创建一个新密钥,并将其导入我的项目中,以替换我不再使用的旧密钥。我已经尝试了在stackoverflow和其他站点上指示的后续步骤,但是在VS2019中仍然出现以下构建错误:
Cannot import the following key file: newtest.pfx. The key file may be password protected.
To correct this, try to import the certificate again or manually install the certificate to the Strong Name CSP with the following key container name: VS_KEY_10580C0D68F0E891 <project name>
但是,这正是我正在尝试的方法。首先,按照here所示创建一个新证书:
New-SelfSignedCertificate -DnsName "somename" -CertStoreLocation "cert:\LocalMachine\My"
然后我将其导出:
$CertPassword = ConvertTo-SecureString -String “somepass” -Force –AsPlainText
Export-PfxCertificate -Cert cert:\LocalMachine\My\<somethumbprint> -FilePath <path>/newtest.pfx -Password $CertPassword
与this question中一样,最后一步是将sn.exe与以下命令配合使用:
sn -i sg newtest.pfx VS_KEY_XXXXXXXXXXXX
命令成功运行,但是当我再次重新启动vs2019并打开加载项解决方案时,再次弹出Samen错误。我该怎么办?
编辑 另外,我无法在“项目”>“属性”>“签名”中取消选中“签署clickonce清单”复选框。这意味着以下答案中提到的从商店中选择选项不可用。 我已经将该项目移到另一台计算机上了,这可能是原因吗?
有些卡在这里。
答案 0 :(得分:0)
几周前我遇到了完全相同的问题。对于我而言,帮助的是,我像您一样创建了证书(放置在“个人证书存储”中),然后使用Visual Studio 2019中的“签名”菜单导入命令行,而不是命令行工具。
右键单击项目,然后单击属性,然后单击签名。启用签署ClickOnce清单并从商店中选择以使用新创建的证书。