导入pfx时无法导入以下密钥文件错误

hob*_*eau 25 code-signing pfx

我在stackoverflow上彻底研究了这个问题,我看到了很多答案,但它们都没有为我们工作.我们最近从comodo购买了一个代码签名证书,我们将用它来签署我们的c#WPF .net4应用程序.
我们已按照以下网址上的说明进行操作

然后在视觉工作室中导入证书,在'项目属性 - >唱歌 - >签署组件'.然后我们尝试构建项目并获得以下错误:

无法导入以下密钥文件:comodo.pfx.密钥文件可能受密码保护.要更正此问题,请尝试再次导入证书,手动将证书安装到具有以下密钥容器名称的强名称CSP:VS_KEY_xxxxxxxxxxxxxxx.

我们在互联网上找到了许多解决方案,并尝试了以下方法:

  • 单击"更改密码"并在所有3个位置使用相同的密码
  • sn -i [comodo] .pfx VS_KEY_xxxxxxxxxxxxx
  • 尝试将其转换为无密码的snk文件并使用它而不是.pfx
  • 尝试以管理员身份运行visual studio并导入密钥
  • 尝试创建非常简单的准系统项目并与之签约
  • 尝试过2010年的视觉工作室以及2012年
  • 我们尝试将以下内容添加到程序集[assembly:AssemblyKeyFile("密钥文件的路径")]
  • 在postbuild"C:\ Program Files(x86)\ Microsoft SDKs\Windows\v7.0A\Bin\signtool.exe"sign/f"$(ProjectDir)[keyfile] .pfx"/ p [thepassword]/v中添加了事件"$(PROJECTDIR)OBJ \发布\ $(TargetFileName)"
  • 添加在.csproj文件的一节中:

  • 下载了http://visualstudiogallery.msdn.microsoft.com/a83505c6-77b3-44a6-b53b-73d77cba84c8并点击了"应用修复"错误

到目前为止,我们没有成功.我们可以使用密码导入密钥,因此我们知道密码是正确的.我们也知道这适用于在clickonce发布中签署清单.为了确保我们没有任何其他问题,我们关闭了cilckonce签名并且只是试图签署集会.

小智 14

您只需打开" Project> Property>Signing ",取消选中"签署的ClickOnce体现"复选框.


hob*_*eau 11

我了解到Visual Studio似乎没有很好地处理从属证书.
我尝试了多台机器上的多个证书(不同的OS/VS组合),结果相同.
我终于发现这是一个解决方法:

  • 用组件签名

    signtool sign /f "[path to pfx]" /p [password] /v "[path to assembly]"

  • 使用mageUI构建安装程序(请参阅" 手动部署ClickOnce应用程序 ")

Visual Studio的问题似乎是它不喜欢证书链.这可以通过导入/导出证书而不进行链接来解决.通过使用certutil并使用AT_SIGNATURE导出来解决下一个问题.我能够将它导入VS并构建,但它似乎没有签署程序集.


Der*_*ter 10

我得到了类似的错误.通过从Windows资源管理器中的上下文菜单中选择" 安装PFX"来解决此问题.


Ala*_*n B 5

另一个“为我工作”......

在 Windows 资源管理器中右键单击 PFX,选择“安装 PFX”并在向导中提供密码。然后在 VS 的项目属性中,在“签名”下选择“更改密码”并重新输入密码。在此之前,只能以管理员身份运行 VS。