Dot-Net

ClickOnce 證書已過期 - 未簽署清單

  • March 19, 2013

我有一個使用 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文件夾。

另外,對於這個突然不能使用我們的應用程序的使用者,我該怎麼辦?

過期證書問題已在 .NET 2 的一個服務包中得到修復。安裝最新的框架 (3.5 SP1) 肯定會包含該修復。您可以切換到更新的證書並重新部署。

如果真的想不簽名,我認為修復方法是相同的 - 確保您的使用者擁有 .NET 3.5 SP1 並使其成為 ClickOnce 設置的先決條件。

makecert -sv MakarioUK.pvk -n “cn=MakarioUK” MakarioUK.cer -b 01/01/2011 -e 01/01/2050 -r

引用自:https://stackoverflow.com/questions/784398