我有几年前在Visual Studio 2008中创建的Excel加载项目 . 它已经进行了一些更改,因此我已升级到Visual Studio 2010(我能够使用的唯一IDE) . 不确定这是否导致问题,但它是背景信息 .
当我检查代码并编译它时,我收到错误,“错误1无法在证书库中找到清单签名证书 . ”
谁能告诉我这意味着什么以及如何解决它?
您需要将该证书重新添加到您的计算机或选择其他证书 .
要选择其他证书或重新创建证书,请转到项目的属性页面,单击“签名”选项卡
点击从商店中选择
单击从文件中选择
单击“创建测试证书”
完成其中任何一个后,您应该能够再次构建它 .
我发现this solution为我解决了这个问题:删除 *.csproj 中属于的所有条目:
*.csproj
<manifestcertificatethumbprint>...</manifestcertificatethumbprint> <manifestkeyfile>...</manifestkeyfile> <generatemanifests>...</generatemanifests> <signmanifests>...</signmanifests>
让我走的快速解决方案是取消选中“签署ClickOnce清单”:项目 - >(项目名称)属性 - >签名选项卡
最初创建项目时,会在项目属性的签名选项卡上添加单击一次签名证书 . 这会在您构建它时签署click-once清单 . 从那时到现在,该证书已不再可用 . 要么这不是你最初构建它的机器,要么以某种方式清理它 . 您需要将该证书重新添加到您的计算机或选择其他证书 .
添加新证书为我解决了这个问题 . 属性页面 - >签名 - >单击“创建测试证书”
确保将 .pfx 文件提交到存储库 .
.pfx
我刚刚在我的默认 .gitignore 找到 *.pfx . 评论它(由 # )并提交更改 . 然后拉出存储库并重建 .
.gitignore
*.pfx
#
删除这篇文章中提到的这些条目:http://manfredlange.blogspot.ca/2008/03/visual-studio-unable-to-find-manifest.html .
还从项目根目录中删除.snk或.pfx文件 .
不要忘记将这些更改推送到GitHub,因为Jenkins只从GitHub中获取源代码 .
.20spupj文件中的错误剩余条目问题仍然出现在VS2015update3中,如果您尝试更改另一个的签名证书也会出现(即使是在证书选择下拉列表中使用'new'选项生成的签名证书) . 接受答案中的建议(标记为未签名,保存,卸载项目,编辑.csproj,删除与旧证书/指纹/键和重新加载项目相关的属性,设置证书)是可靠的 .
我创建了一个新密钥,我不得不在csproj中搜索旧密钥并重构它 .
痛苦的屁股 .
9 回答
您需要将该证书重新添加到您的计算机或选择其他证书 .
要选择其他证书或重新创建证书,请转到项目的属性页面,单击“签名”选项卡
点击从商店中选择
单击从文件中选择
单击“创建测试证书”
完成其中任何一个后,您应该能够再次构建它 .
我发现this solution为我解决了这个问题:删除
*.csproj
中属于的所有条目:让我走的快速解决方案是取消选中“签署ClickOnce清单”:项目 - >(项目名称)属性 - >签名选项卡
最初创建项目时,会在项目属性的签名选项卡上添加单击一次签名证书 . 这会在您构建它时签署click-once清单 . 从那时到现在,该证书已不再可用 . 要么这不是你最初构建它的机器,要么以某种方式清理它 . 您需要将该证书重新添加到您的计算机或选择其他证书 .
添加新证书为我解决了这个问题 . 属性页面 - >签名 - >单击“创建测试证书”
确保将
.pfx
文件提交到存储库 .我刚刚在我的默认
.gitignore
找到*.pfx
. 评论它(由#
)并提交更改 . 然后拉出存储库并重建 .删除这篇文章中提到的这些条目:http://manfredlange.blogspot.ca/2008/03/visual-studio-unable-to-find-manifest.html .
还从项目根目录中删除.snk或.pfx文件 .
不要忘记将这些更改推送到GitHub,因为Jenkins只从GitHub中获取源代码 .
.20spupj文件中的错误剩余条目问题仍然出现在VS2015update3中,如果您尝试更改另一个的签名证书也会出现(即使是在证书选择下拉列表中使用'new'选项生成的签名证书) . 接受答案中的建议(标记为未签名,保存,卸载项目,编辑.csproj,删除与旧证书/指纹/键和重新加载项目相关的属性,设置证书)是可靠的 .
我创建了一个新密钥,我不得不在csproj中搜索旧密钥并重构它 .
痛苦的屁股 .