2011-10-20 35 views
2

我有一箇舊的ClickOnce程序,它已被我寫的新程序取代,我知道有些人仍在使用舊程序。打破舊的clickonce應用程序,所以沒有人可以使用它? (遠程卸載所有安裝?)

我想以某種方式從每臺仍在使用的計算機上遠程刪除它(有太多手動找到它們)。

我不想做一個更新,將阻止它的工作,因爲他們可能不會決定安裝更新。

有沒有辦法更改服務器上的清單文件,所以當應用程序檢查更新時,它們不會打開?

乾杯

回答

3

要做的最好的事情是將更新發布到舊應用程序並讓它自行卸載。 Adam提到的博客文章中有一些bug, here是我爲MSDN編寫的一篇文章,它經過了Microsoft的測試和認可,其中包括卸載應用程序的代碼。我已經多次使用它,即使是VSTO應用程序。

2

根據我的經驗,當一個ClickOnce應用程序在自動更新過程中遇到問題,它只會靜默失敗並運行磁盤以前的版本。我不認爲在清單中有什麼可以改變的地方是讓應用程序完全失敗。

當你的應用程序啓動時,它是否有任何外部依賴,如共享配置文件?您可以刪除對此類資源的訪問,以防止應用程序啓動。

另一種選擇是自動執行舊應用程序的卸載過程並將用戶引導至新應用程序。這是一個blog post,如果你走這條路線應該會有所幫助。

相關問題