2009-04-24 103 views
8

我有一个使用ClickOnce的分布式应用程序。我去做了一个更新,并得到了有关证书过期的错误。我注意到在签名选项卡上,我可以取消选中签署ClickOnce清单。我做到了,并成功发布了我的应用程序。它的工作罚款前七个用户 - 但只是有这样的越来越可怕的用户:ClickOnce证书已过期 - 未签署清单

Manifest XML signature is not valid. 

+ No signature was present in the subject. 

我将有几十更多的用户尝试在接下来的24小时。我越过我的手指,我没有什么大问题。我已经阅读了一些关于MS ClickOnce和过期证书的问题/错误的书籍,我希望通过简单地不签字来避免它们。过期的证书只是最初设置ClickOnce时创建的通用证书。从签名清单到未签名清单有问题吗?

有问题的用户甚至无法卸载并重新安装应用程序。我们尝试了所有我能想到的方法 - 包括删除他的User\Local Settings\Apps\2.0文件夹。

另外,我可以为这个用户突然无法使用我们的应用程序?

+0

谢谢了问题。我在几个月内提出了这个确切的问题,并想知道同样的事情。期待一些好的答案。 另外,你确定用户有安装.net框架的正确版本?有时候我们会遇到古怪的clickonce问题,重新安装框架似乎在很多时候都有效。 – codeConcussion 2009-04-24 04:19:24

+1

好主意 - 如果它修复了他的问题,我会要求他重新安装并报告回来。 – aSkywalker 2009-04-24 04:43:19

回答

3

即将到期的证书问题在.NET 2的某个服务包中得到解决。安装最新的框架(3.5 SP1)将包含修复程序。您可以切换到更新的证书并重新部署。

如果真的想要去签名,我认为修补程序是相同的 - 请确保您的用户具有.NET 3.5 SP1并使其成为您的ClickOnce设置中的先决条件。

1

makecert -sv MakarioUK.pvk -n “CN = MakarioUK” MakarioUK.cer -b 01/01/2011 -e 2050年1月1日-r