0

我一直在向 C# 4.0 WinForms 应用程序添加新功能。该应用程序已使用 ClickOnce 发布到 Live 并使用证书签名。

所以我需要创建一个新的 ClickOnce 安装,以便升级以前安装的版本。但是我被告知不要使用证书来签署清单,因为证书即将到期。

我遇到的问题是它没有检测到已经安装了以前的版本,而是安装了新的安装(因此该应用程序在“添加或删除程序”中列出了两次)。

我不知道是因为我在另一台 PC 上构建 ClickOnce,还是因为我不再签署清单但它没有升级。有人可以告诉我我需要做什么才能从以前的 ClickOnce 安装升级 ClickOnce 安装吗?ClickOnce 是否有像 MSI 一样的产品代码?

非常感谢

4

2 回答 2

2

证书是部署身份的一部分。删除它会改变身份,这就是它并排安装的原因。尝试使用任何证书对其进行签名,即使它是即将过期的证书,或者来自 Visual Studio 的测试证书。那应该行得通。

另请注意,如果您的证书即将到期,如果您在 Signing 选项卡中填写 TimeStamp Server(您可以使用http://timestamp.comodoca.com/authenticode),那么如果您发布证书时证书没有过期应用程序,它将继续工作,直到您部署新版本。基本上,ClickOnce 说,“当他们部署它时它是有效的,所以它是有效的”,即使从那时起证书已经过期。

于 2013-09-06T19:20:33.107 回答
0

在尝试了许多不同的方法之后,无法创建 ClickOnce 升级以使用未签名的 ClickOnce 安装升级已签名的 ClickOnce 安装。

谢谢你的回复杰西。

于 2013-09-06T09:35:12.133 回答