错误msb3325无法导入密钥文件

时间:2013-02-26 18:12:16

标签: c# visual-studio-2010 build cruisecontrol.net

我最近克隆了一台构建机器,在域上重命名了该机器,并将机器从SATA驱动器移动到SSD驱动器。

我正在尝试为SVN中的新分支设置新构建。 该应用程序是Visual Studio 2010 C#和VB.NET代码以及VB6代码

的组合

当第一个项目尝试从命令行编译时,它无法编译并显示错误: “错误MSB3325:无法导入以下密钥文件:”MyFile1.pfx“。密钥文件可能受密码保护。要解决此问题,请尝试再次导入证书或使用以下密钥容器手动将证书安装到强名称CSP名称:VS_KEY _ ##########“

现在我可以打开Visual Studio 2012 IDE并成功构建项目,包括Release和Debug模式。以任何顺序。

我试图解决这个问题:

  1. 我打开了proj文件并选择了属性,签名并尝试再次选择“MyFile1.pfx”文件。
  2. 我已尝试再次签署MyFile1.pfx文件。
  3. 我打开了Visual Studio 2012项目,并打开了一个命令窗口。我试过'sn -i xxxxx.pfx VS_xxxxxxx“,在提示时输入密码
  4. 我尝试手动编辑。* proj文件并删除对MyFile1.pfx文件的引用并重建项目,然后再次添加“MyFile1.pfx”文件。
  5. 在每种情况下,命令行构建都会失败,Visual Studio构建也会成功。

    我的命令行构建是使用构建的解决方案文件并调用devenv.com来构建解决方案。

    我很困惑为什么IDE构建工作而命令行没有,我猜它与.com与exe构建有关。

    除了为这个分支构建从头构建一个新的构建机器之外,还有什么我可以做的吗?

    谢谢。

1 个答案:

答案 0 :(得分:1)

好的,我找到了解决方案。

这很奇怪,但却是真的。它涉及所有事物的巡航控制服务。如果其他人遇到类似问题,请检查Cruise Control的服务属性。

  1. Open Services.msc
  2. 单击“登录”选项卡
  3. 检查“此帐户”设置(如果已设置)。确保至少第一次运行的设置 是当前的用户。
  4. 我的设置是为本地管理员帐户设置的,我在设置计算机时不以本地管理员身份登录。希望这有助于其他任何人试图追逐流氓文件签名问题。

    丹 -