2010-06-10 57 views
1

我有一個C#應用程序,我試圖通過ClickOnce自動更新。發佈較新版本的軟件後,我在發佈文件夾中看到新版本,但是當我打開應用程序時,它會檢查更新,並且什麼都不做(即使發佈文件夾中有新文件)。我的本地文件共享ClickOnce更新不起作用,幫助?

我需要什麼來實現自動更新?

編輯

您正在使用什麼版本的Visual Studio? Visual Studio 2008

您是否將升級部署到與舊版本相同的位置? 他們正在發佈到相同的位置(不知道部署)

安裝URL是否相同?你增加了版本號嗎? 是

在通過單擊發布頁面中的更新按鈕到達的更新對話框中,是否有「應用程序應該檢查更新」選項? 是

您是否選擇了「應用程序啓動之前」? 是

如何部署文件? 不確定

您是將它們複製到文件共享還是直接發佈? 直接發佈

回答

1

這是它有點反覆試驗,因爲它看起來像你正確的配置。所以它必須與你的環境有關。

發佈網址與最初安裝它的網址不同嗎?

如果你在本地開發機器上討論這種行爲,那麼你可能首先從不同的位置運行,這尤其相關。這樣它會繼續在初始激活路徑中查找更新。建議嘗試一個完整的卸載/重新安裝,看看它是否存在...你可以通過查看ApplicationDeployment.CurrentDeployment.ActivationUri進行測試。

如果最差來到絕對最差,那麼也許manually check and run updates

相關鏈接:

2

您使用的是什麼版本的Visual Studio?
您是否將升級部署到與舊版本相同的位置?
安裝URL是否相同?你增加了版本號嗎?
在通過單擊發布頁面中的更新按鈕到達的更新對話框中,是否有「應用程序應該檢查更新」選項?
您是否選擇了「應用程序啓動之前」?
你如何部署文件?
您是將它們複製到文件共享還是直接發佈?
如果您在那裏複製它們,您是否也在將該版本的部署清單(whatever.application)複製到部署文件夾結構的頂部?
這是指示應安裝哪個版本的文件。如果您使用的是VS2008/2010,則在每個版本化文件夾(yourapp_a_b_c_d)中都有一個每個版本的部署清單的副本,如果您要手動部署,則可以將其複製到根目錄。

+0

我回答在OP這些問題。 我一直在用我的應用程序搞砸了,而且好像如果我按下發布文件夾中的APP.application,它會完美更新,但是當我通過startmenu快捷方式訪問應用程序時,它不會更新... – sooprise 2010-06-10 22:07:25

+0

發佈文件位置URL和安裝URL是什麼?你是否在「更新」屏幕上填寫了URL?如果是,那麼它的價值是什麼? – RobinDotNet 2010-06-11 19:03:12

+0

運行部署清單(yourapp.application)基本上是一個更新程序,所以這很好。它有助於縮小問題範圍。看起來好像有什麼不好的地方。 – RobinDotNet 2010-06-11 19:04:07