发布Windows Forms项目失败

36
我正在尝试点击项目并发布它。但我得到的是这个:
Error 94  An error occurred while signing: Failed to sign

bin\Debug\app.publish\setup.exe。SignTool错误:签名者证书无效。SignTool错误:在尝试签名时发生错误:bin\Debug\app.publish\setup.exe CHATT3R


从错误信息来看,“签名者的证书无法用于签名。”,请确保证书有效。 - Jethro
我该如何做才能在我的项目中创建一个临时证书,但我不知道它的作用是什么。 - Dmitry Makovetskiyd
首个搜索结果:http://social.msdn.microsoft.com/forums/en-US/vbgeneral/thread/ea9c799e-719e-4a0b-b89b-ed1abb89c45b/ - Hans Passant
4个回答

60

我遇到了这个问题,结果发现证书已过期(有用的错误提示 - 谢谢微软)

如果你进入项目属性中的签名页面,你可以看到证书的到期日期,如果需要可以创建一个新的测试证书。


这对我也起作用了 - 但是首先必须重新启动Visual Studio。 - CYMR0

6

在项目属性中转到签名页面,取消选中“签署 ClickOnce 清单”。

请参见截图


我认为不签署清单不是一个有用的建议。 - Prokurors

4

在我的情况下,我只需要:

  • 右键单击您的项目。
  • 选择“设置”。
  • 进入签名页面。
  • 取消选中“签名ClickOnce清单”。

完成。


0

我之前也遇到了签名问题,并出现了错误error MSB3482: An error occurred while signing: Failed to sign bin\Debug\app.publish\....exe. SignTool Error: An unexpected internal error has occurred有趣的是,我的证书并没有过期

在我的情况下,问题出在时间戳服务器URL上-我不知道为什么,但之前提供的URL由于某种原因不再工作了(可能是暂时不可用?)

将其切换到不同的时间戳服务器URL,签名就又可以工作了 enter image description here

不起作用的时间戳服务器URL http://tsa.starfieldtech.com

我替换的时间戳服务器URL是http://timestamp.globalsign.com/scripts/timstamp.dll


刚刚遇到了同样的问题 - 将时间戳服务器URL更改为以前的那个 - 签名问题就解决了。 - Prokurors

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接