我們有一個最小的'updater'exe文件,用於在啓動實際應用程序之前檢查遠程URL是否有更新,下載它們並替換磁盤上的文件。但是,如果我們想要替換更新程序EXE,那麼AFAIK有兩種選擇:實現自更新軟件的最佳方法
1)Shadow Copying Assemblies由此.Net將創建EXE(和任何引用的程序集)的影子副本並加載這些程序集,陰影組件可以被替換,並且將在下次啓動應用程序時使用。
2)確定哪些文件被替換並在磁盤上重命名/移動它們。 Windows似乎允許重命名/移動鎖定的文件,所以我們可以移動這些文件並複製到新的程序集中。再次,在下次啓動應用程序時,我們將啓動新的程序集。這種方法被提及here
這是第二種方法推薦的方法?這種方法有沒有陷阱?
聽起來合理 – jpierson 2012-04-25 16:59:40
@jpierson和它的作品:)。我已經使用這種方法已有2年,現在可以用於我自己的應用程序。 – 2012-04-25 18:53:30