4

我有从https://www.globalsign.co.uk/购买的 .pfx 证书。我已经用它签署了我的 VSTO(Visual Studio 中的 Excel 加载项项目类型)项目的 ClickOnce 清单,并且一切正常。使用一个月后,我尝试重建我的项目(以前可以工作),现在它给了我一个错误:

签名时出错:未知错误“-2147012894”

证书完全有效且未过期,并且手动签名如下完美:SignTool sign /f mycert.pfx /p password somefile.exe

我尝试删除 Personal/Certificates 路径下 certmgr.msc 中的所有证书,但没有帮助。

以前有人遇到过这种错误吗?有什么建议么?

4

2 回答 2

6

令人惊讶的是,修复比预期的要容易......我只需要打开项目文件并删除与签署程序集相关的所有 xml 标记。例如:

  <PropertyGroup>
    <SignManifests>true</SignManifests>
  </PropertyGroup>
  <PropertyGroup>
    <ManifestKeyFile>mycert.pfx</ManifestKeyFile>
  </PropertyGroup>
  <PropertyGroup>
    <ManifestCertificateThumbprint>AB3S6</ManifestCertificateThumbprint>
  </PropertyGroup>
  <PropertyGroup>
    <ManifestTimestampUrl>http://timestamp.globalsign.com/scripts/timstamp.dll</ManifestTimestampUrl>
  </PropertyGroup>

之后,我只是转到签名选项卡并重新添加了证书。这奏效了。希望这将有助于将来的某人。

于 2013-03-01T09:47:32.747 回答
3

我猜想您构建项目时使用的证书与手动签名时使用的证书不同,否则它会起作用。

转到项目的项目属性,然后单击“签名”选项卡并查看。如果您仍然认为它是正确的,请单击“从文件中选择”并再次选择 pfx 文件以强制重新加载,然后再试一次。

于 2013-02-28T22:17:05.150 回答