Daily Archives: 2011/10/23

[VS2010] 封裝部署時將必要條件一併散佈


今天在論壇上看到有人提到如何不用從網路上下載 .Net framework 這個必要條件,就用 VS2010 整理出來,相同方法在 VS2005 及 VS2008 都適用。

我以前在 VS2005 上開發專案就碰過這個需求,因為我的專案要拿到遠洋客、貨、油輪上安裝 (有絕密消息轉述敦睦艦隊有裝過我另一個專案),在船上透過衛星網路,每一分流量都很貴,所以寄送光碟片或是隨身碟反而是便宜的方案,因此需要把必要條件所需的 .Net framework 及相關軟體一併散佈。

在前篇[VS2010]安裝專案設定低版的 .Net Framework 卻需要高版的 .Net Framework 或其他元件中已經有圖了,我就省點網路空間,直接用這兩張圖繼續往下說明。

當在 Setup.exe 檢查「必要條件」中設定為

從應用程式的相同位置下載必要條件(D)

後,編譯時就會將檔案複製到安裝程式下的目錄。

必要條件

上圖的設定下,當使用者用 Setup.exe 安裝時,就會在上述位置取得必要條件來安裝。

考慮到使用者可能跳過 Setup.exe ,直接執行 Setup.msi 安裝,造成須上網下載檔案的情況時,可在 Setup.msi 檢查「啟動條件」中的 InstallUrl 設定相對位置,這樣在使用者利用 Setup.msi 來安裝程式時,也會到對應目錄取得必要檔案,就不會發生需要上網下載檔案的情形。

啟動條件

由於 VS2005 / VS2008 / VS2010 繁中版均只有提供中文的授權聲明,所以若是選擇安裝環境為英文,編譯時會發出警告,提醒使用者語言環境不一致的情形,由於微軟大部分的封裝檔均與語言無關,所以一般情形是不會有影響,仍然會將必要的檔案重新複製到安裝程式輸出的目錄。

編譯完成後,即可在安裝程式輸出的目錄下發現,編譯器已經將必要條件複製到此目錄,並以子目錄方式存在。

Categories: 封裝部署, 技術分享 | 1 則迴響

在WordPress.com寫網誌.