Visual Studio报告错误“PFX - 错误导入密钥/对象已存在”

时间:2009-05-20 14:11:25

标签: visual-studio clickonce pfx

我有一个Visual Studio 2008 ClickOnce解决方案,我试图在打开“Sign Manifest”的情况下进行编译。

选中此选项后,系统会提示我输入我的PFX文件密码,输入正确的密码后会收到错误消息:

  

“导入密钥错误”/“对象已存在”。

我确定我已经洗了一些东西。我试图运行以下内容无济于事。

CERTUTIL -importPFX -user <pfxname>.pfx AT_SIGNATURE

5 个答案:

答案 0 :(得分:8)

我遇到了同样的问题。使用“以管理员身份运行”启动Visual Studio解决了这个问题。

答案 1 :(得分:3)

我不知道这是否有助于解决这个问题,但是在Vista升级到Windows 7后我有类似的东西,只需更改MachineKeys文件夹的权限(C:\ Documents and Settings \ All Users \ Windows 7中的ApplicationData \ Microsoft \ Crypto \ RSA \

见这里: Certificate problem - Error Importing Key "object already exists" after Windows 7 upgrade

如果这有用,请告诉我。)

答案 2 :(得分:2)

我刚刚发现解决此问题的另一种方法:取消选中“签署ClickOnce清单”,在解决方案资源管理器中从项目中排除cert文件。重命名证书文件。无论什么,只要它不同。重新启用签名并选择新文件。根据要求输入密码。建立,耶!

答案 3 :(得分:1)

只是想在这个问题上添加我自己的经验。

在进行了一系列系统类型更改之后突然出现了......其中一个正在打开Vista UAC来测试我正在处理的应用程序。

进入这个确切的问题,它不会编译。我吓坏了......

...修复权限似乎在... \ RSA \ MachineKeys文件夹似乎已经让问题消失但看着它的权限并注意到devenv.exe(VS IDE)没有被告知“运行作为管理员“这个问题可能是由UAC限制造成的。

讨厌 Vista中的伪管理模式....

答案 4 :(得分:0)

我目前也遇到这个困难。我的情况与此有些不同,因为我试图为我的程序集生成一个强名称密钥文件

我还没有解决这个问题,但我认为这是因为无论出于什么原因,密钥已存在于用于生成密钥的CSP的密钥存储区中。为什么密钥已经存在,我不知道,也没有找到删除它的方法,但是当我这样做时我会更新这个问题