我们刚刚将Visual Studio 2008项目升级到Visual Studio 2010.我们使用Verisign代码签名证书对所有程序集进行了强签名.自升级以来,我们不断收到以下错误:
无法导入以下密钥文件:companyname.pfx.密钥文件可能受密码保护.要更正此问题,请尝试再次导入证书,或使用以下密钥容器名称手动将证书安装到强名称CSP:VS_KEY_3E185446540E7F7A
这种情况发生在一些开发者机器而不是其 用于解决此问题的一些方法在某些时候起作用包括:
我已经尝试使用SN.EXE实用程序(强名称工具)来注册具有强名称CSP的密钥,如错误消息所示,但每当我使用Visual Studio 2010附带的版本运行任何选项的工具时,SN .EXE只列出其命令行参数而不是执行任何操作.无论我提供什么参数,这都会发生.
为什么会发生这种情况,以及解决这个问题的明确步骤是什么?我即将放弃ClickOnce安装和Microsoft代码签名.
尝试使用TFS 2010 上的Team Build(MSBuild)构建项目时出现此错误:
C:\ Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets(1970):
无法导入以下密钥文件:CCC.pfx.
密钥文件可能受密码保护.
要更正此问题,请尝试再次导入证书,或使用以下密钥容器名称手动将证书安装到强名称CSP:VS_KEY_C00C673BBB353901C:\ Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets(1970):
导入密钥文件"CCC.pfx"已取消.
它在Visual Studio 2010中构建正常.程序集使用PFX文件进行签名.通常在Visual Studio中,我们会在第一次构建时提示输入密码,但之后再也不会...
我试过跑:
sn -i companyname.pfx VS_KEY_3E185446540E7F7A
Run Code Online (Sandbox Code Playgroud)
正如Stack Overflow问题中建议的其他回复无法导入密钥文件'blah.pfx' - 错误'密钥文件可能受密码保护'.我已尝试按Stack Overflow问题中的建议导入个人证书存储区使用MSBuild对ClickOnce或程序集结果进行错误MSB3321签名.但一切都无济于事,仍然是同样的错误.
我该怎么做?我是否必须以某种方式将证书添加到构建服务运行的Windows帐户或类似的东西?
或者,如何在Team Build中完成构建而不使用签名?我只是想检查它编译并运行单元测试.我不需要签名.