为什么我的Excel加载项中显示“在证书存储中找不到清单签名证书”?


216

我有一个Excel加载项项目,该项目是在Visual Studio 2008上创建的。要进行一些更改,因此我已升级到Visual Studio 2010(我唯一可以使用的IDE)。不知道这是否是导致问题的原因,但它是背景信息。

当我检出代码并进行编译时,出现错误“错误1无法在证书存储中找到清单签名证书”。

谁能告诉我这意味着什么以及如何解决?

Answers:


250

您需要将该证书重新添加到您的计算机或选择另一个证书。

要选择其他证书或重新创建证书,请转到项目的属性页面,单击“签名”选项卡,然后选择

  • 点击从商店中选择
  • 单击从文件中选择
  • 点击创建测试证书

完成以上任何一个操作后,您应该可以再次构建它。


134
在中,Project's properties page您可以转到,Signing tab然后取消选中“签署ClickOnce清单”复选框。
Rubens Mariuzzo 2012年

10
@RubensMariuzzo-不是,如果您真的要签名的话
Matt Wilko

对于Office加载项来说,取消选中是不可能的,并且将被取消选中。
it3xl 17-10-31

1
如何在构建服务器上完成“创建测试证书”操作?
ryanwebjackson

138

我找到了这个解决方案,该解决方案为我解决了问题:删除*.csproj属于您的所有条目:

<manifestcertificatethumbprint>...</manifestcertificatethumbprint>
<manifestkeyfile>...</manifestkeyfile>
<generatemanifests>...</generatemanifests>
<signmanifests>...</signmanifests>

1
当应用程序以前是ClickOnce但不再使用时(在“签名”标签中复选框为灰色)时,这是必需的
Dan Bechard 2015年

1
也为我工作。显然,项目文件中有一些我们做过的实验留下的残留物,必须手动清除。顺便说一句-我还必须从项目中删除.snk文件。所以对我来说是:删除.snk,禁用签名,编辑项目文件,重新加载项目并启用签名。
OSH 2015年

如果您曾经检查过ClickOnce,然后切换到Sign Assembly,则显然需要。
罗兰

1
这是最好的答案。
Homam

3
取消选中“签署ClientOnce清单”并不总是有效。解决方案是从您的csproj文件中删除提及的行
花蜜

98

让我动身的一种快速解决方案是取消选中“项目->(项目名称)属性->签名标签”中的“签署ClickOnce清单”


1
我必须同时取消选中项目属性中“签名”选项卡下的复选框Sign the ClickOnce manifestsSign the assembly复选框,以消除此问题。我根本没有使用任何签名。
RBT

13

最初创建项目时,将单击一次签名证书添加到了项目属性的“签名”选项卡上。这将在您构建单击一次清单时对其进行签名。从那时到现在,该证书不再可用。这不是您最初在其上构建的机器,还是某种方式对其进行了清理。您需要将该证书重新添加到您的计算机或选择另一个证书。


24
“您需要将该证书重新添加到您的计算机或选择另一个证书。” 如果您知道如何添加证书,那么说明此线程的操作方式或指向此线程的操作方式的链接将非常有帮助。照原样,您的答案仅是答案的一半。

1
项目属性页> Signing垂直选项卡中>单击Create test certificate。并且不要忘记提交一个新创建的文件,You.Project_TemporaryKey.pfx因为.pfx文件通常被忽略
it3xl 17-10-31

我认为该解决方案是Visula Studio Office项目的唯一合适解决方案。
it3xl

13

添加新证书可以为我解决此问题。属性页->签名->单击创建测试证书


有没有办法在构建服务器上执行此操作(通过命令行)?
ryanwebjackson

8

确保将.pfx文件提交到存储库。

我只是发现*.pfx我的默认值.gitignore。(通过#)注释并提交更改。然后拉存储库并重建。



0

VS2015update3仍然会出现.csproj文件中错误的剩余条目的问题,并且如果您尝试更改其他证书的签名证书(即使该证书是使用证书选择下拉列表中的“ new”选项生成的),也会出现该问题。 。接受的答案中的建议(标记为未签名,保存,卸载项目,编辑.csproj,删除与旧证书/缩略图/密钥和重新加载项目,设置证书有关的属性)是可靠的。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.