我一直在C# 4.0 WinForms应用程序中添加新功能。应用程序已经使用ClickOnce发布到Live中,并使用证书进行签名。
因此,我需要创建一个新的ClickOnce安装,以便升级以前安装的版本。但是有人告诉我不要使用证书来签署清单,因为证书即将过期。
我遇到的问题是,它没有检测到已经安装了以前的版本,而是安装了一个新的安装程序(因此该应用程序在添加或删除程序中列出了两次)。
我不知道是因为我在不同的PC上构建ClickOnce,还是因为我不再签署清单,但它没有升级。请有人告诉我,我需要做什么使我的ClickOnce安装升级从以前的ClickOnce安装?ClickOnce是否有像MSI那样的产品代码?
非常感谢
发布于 2013-09-06 09:35:12
在尝试了许多不同的方法之后,不可能创建一个ClickOnce升级来用一个未签名的ClickOnce安装来升级一个签名的ClickOnce安装。
谢谢你的回复,杰茜。
发布于 2013-09-06 19:20:33
证书是部署标识的一部分。删除它会改变身份,这就是为什么它会并排安装。尝试使用任何证书(即使它将过期)或Visual的测试证书对其进行签名。那应该管用。
还请注意,如果您的证书要过期,如果您在签名选项卡中填写了TimeStamp服务器(您可以使用http://timestamp.comodoca.com/authenticode),那么如果您发布应用程序时证书没有过期,它将继续工作直到您部署一个新版本。基本上,ClickOnce说,“在他们部署它的时候,它是有效的,所以它是有效的”,尽管从那以后证书已经过期了。
https://stackoverflow.com/questions/18536219
复制相似问题