none
怎樣加快自動更新的檢查速度 RRS feed

  • 問題

  • 我使用的是Microsoft Visual Studio 2005。
    當程式的版本增加,開啟程式前的檢查更新變得很久。
    我發現在用戶的電腦上會保存舊版本的程式,刪除後檢查更新就變快了。
    請問有方法自動刪除舊的版本嗎?
    • 已編輯 鏡影 2009年9月16日 上午 02:47
    2009年9月14日 上午 04:04

解答

所有回覆

  • 請問您是用ClickOnce去部署的嗎??
    2009年9月14日 上午 06:02
  • 參考

    如何讓Windows Installer(VS 2005)執行時,自動移除舊版?
    http://social.msdn.microsoft.com/Forums/zh-TW/230/thread/33c02a1b-32dd-42e5-a5b6-33d2737b7d8c

    請問.NET的自訂部署
    http://social.msdn.microsoft.com/Forums/zh-TW/233/thread/95dd2419-4953-4faf-a6be-10b3efc4ce92


    .NET菜鳥自救會 http://www.dotblogs.com.tw/chou/
    • 已標示為解答 鏡影 2009年9月14日 上午 07:02
    • 已取消標示為解答 鏡影 2009年9月14日 上午 07:17
    2009年9月14日 上午 06:28
    版主
  • 對, 我是用ClickOnce去部署
    2009年9月14日 上午 06:59
  • 我找了很久也找不到RemovePreviousVersions
    ClickOnce是否沒有這屬性?
    2009年9月14日 上午 07:22
  • 嗯.......我也找不到要在哪邊設定這個屬性


    如果不要更新版本號呢??
    把「隨著每次發行自動遞增修訂」的勾勾取消掉試試看
    2009年9月14日 上午 08:04
  • 如果不更新版本號, 用戶端不會知到程式要更新。
    2009年9月14日 上午 08:13
  • 說得也是...........不過ClickOnce是並行安裝,似乎沒有移除舊版本的功能
    不然做弊好了


    我想到的方式如下:
    再寫一個執行檔,這個執行檔只做移除動作(Msiexec),每次您要更新版本的時候,也把這個執行檔的版本號+1
    如此user在更新的時候,其實就是在做移除舊程式的動作。接著移除完之後,才去呼叫主程式的安裝檔



    2009年9月14日 上午 08:43
  • To 鏡影

    回歸到原本您的問題,您提到 [我發現在用戶的電腦上會保存舊版本的程式,刪除後檢查更新就變快了]

    也許思考一下,是否因為檢查更新速度變慢,所以就要刪除用戶電腦的舊版程式 ?

    而隨意寫程式去刪除客戶端的程式,是不是會導致執行不正確?

    也許你可以參考

    選擇 ClickOnce 更新策略
    http://msdn.microsoft.com/zh-tw/library/s22azw1e.aspx


    ClickOnce 執行應用程式更新的方式
    http://msdn.microsoft.com/zh-tw/library/ms404267.aspx


    .NET菜鳥自救會 http://www.dotblogs.com.tw/chou/
    • 已標示為解答 Lolota Lee 2009年9月21日 上午 05:52
    2009年9月14日 上午 09:08
    版主
  • To 阿尼
    寫一個執行檔做移除動作, 這對我來說是很困難的工作>.<
    先看看有沒有簡單的方法, 最後才行這一步.

    To 小歐ou
    其實你說得對, 我的最終目標是令檢查更新速度變快, 因此刪除客戶端的程式也許不對.
    但在我有限的知識只找到這方法...

    由於我想保證不會執行舊版, 所以只可 核取 [在應用程式啟動前 ] 強制更新
    [在應用程式啟動前 ] 更新就令到開啟程式慢了...
    從用戶的角度:
    用戶a: 我輸入一張單, 有一半的時間是用在開程式!!
    用戶b: 沒有更新, 為什麼要檢查?
    2009年9月16日 上午 02:20
  • 因為不時更新檔案,又沒去寫更新程序,最後我用svn去做檔案更新的動作,可以參考看看
    svn有命令列模式
    租一個網路上的svn主機
    打包一個安裝檔,安裝環境跟必要資料,例如svn dos版,跟checkout的bat檔
    安裝完畢後自動執行bat檔
    就有執行檔啦
    更新檔案時,先更新svn主機上的資料
    然後手動或自動通知客戶端執行bat檔
    svn就會自動判斷哪些該更新哪些不用

    2009年9月25日 上午 10:05