我有一个Visual Studio 2010 VSTO Outlook Add In项目,最初是在Visual Studio 2008中创建的。VSTO dll项目使用VeriSign证书(Pfx文件)签名。当项目在VS 2008下创建时,在新的开发机器上构建它没有任何问题。现在,在VS 2010下,我们得到以下构建错误:
"无法导入以下密钥文件:Blah.pfx. "密钥文件可能是密码保护。要纠正此错误,请尝试导入证书重新安装或手动将证书安装到强名称CSP"VS_KEY_blahblahblahblah"
有一段时间,我能够使用sn.exe -i手动将证书安装到强名称CSP中,正如错误提示的那样,一切都很好。现在,当我尝试使用sn.exe -i安装证书时,我得到以下神秘的错误消息:
"Failed to parse pkcs# 12 blob in blah. "pfx——内部错误发生"
有谁知道是什么原因导致这个失败,以及如何解决它?我已经看到了几个关于在Microsoft/Crypto/RSA下设置MachineKeys文件夹权限的帖子,我已经尝试过了,但仍然得到相同的错误信息。
我最终打开了Microsoft Premier Support事件来解决这个问题,结果发现我们的证书已经损坏了。解决方案是用一个新的Certificate替换它。