在WiX中創建安裝程式以分發升級的應用程式

頁面創建日期 :

環境

Visual Studio
  • Visual Studio Community 2017
  • Visual Studio Community 2019
WiX Toolset
3.11.2

* 它適用於其他版本,但尚未確認

入門

提供有關如何在升級應用程式時創建安裝程式的分步說明。 它基於創建安裝程式的第一個版本的分步文章。 製作方法可能存在差異。

如果要在更新之前保留上一個專案,請以某種方式備份它,例如複製檔。

提前準備

  • 您已經創建了安裝程式的第一個版本,並且該專案存在。

關於升級類型

有幾種升級方法可以升級,如以下文章所示。 此處的過程描述了主要升級。 除非有特殊情況,否則此方法沒有問題。

更改產品.wxs

啟動虛擬工作室並打開已創建的專案(解決方案檔)。

開啟產品.wxs 並更改以下參數:

Wix/Product/@Id

如果要進行重大升級,請將此ID替換為新的 GUID。

您無需更改「次要升級」或「小升級」 ,但此處不介紹。

<Wix>
  <Product Id="XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" />

Wix/Product/@Version

用於確定在安裝過程中是新版本,因此請增加比以前的版本更多的數位。 有四個數位:「主要版本.次要版本.修訂版.內部版本」。 有三個主要版本,次要版本,修訂版,將決定版本是否已升級。

數位越多,數位就越好,但基本上與應用程式的版本一起使用是可以的。

<Wix>
  <Product Version="1.8.0.0" />

Wix/Product/@UpgradeCode

此代碼標識同一應用程式的版本升級。 因此,如果要在覆蓋安裝中升級,請不要從首次發佈時的代碼進行更改。

相反,如果要升級但作為單獨的應用程式安裝,請將其替換為新的 GUID。

<Wix>
  <Product UpgradeCode="XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX">

Wix/Product/MajorUpgrade/@DowngradeErrorMessage

在已安裝應用程式的新版本中啟動舊安裝程式時要顯示的消息。 它用於舊版本的安裝程式,因此,如果您已經在早期版本中設置了消息,則無需更改它。 如果要更改它,請重寫它。

如果要顯示日語,則必須將語言和摘要代碼屬性設置為日語(日語支援在另一篇文章中介紹)。 產品名稱將替換為產品名稱。

<Wix>
  <Product>
    <MajorUpgrade DowngradeErrorMessage="すでに新しいバージョンの [ProductName] がインストールされているため、インストールを中断します。" />

image

放置要安裝的檔

就像第一次創建安裝程序一樣 請重新輸入新程式和相關文件。 刪除不再使用的檔。

image

更新許可證.rtf

如果要更改要在安裝螢幕上顯示的許可協定,請更改內容。

image

更新產品.wxs 的安裝文件資訊

* 如果安裝的檔案或資料夾設定與以前的版本沒有變化,則無需處理此專案。

此項目的高級任務是刪除並重新創建以前檔的所有安裝設置。 如果只增加或減少一個檔,則直接擺弄 Product.wxs 代碼可能更快。

啟動"WixEdit"。

image

打開您的產品.wxs 檔。

image

image

從左側圖示中選擇「檔」。 刪除「程式檔案資料夾」 下的資料夾。

image

右鍵按下「程式檔資料夾」 資料夾「資料夾」 資料夾,然後選擇「匯入資料夾」。

image

選擇要安裝的檔案所在的資料夾。

image

一系列檔將添加到樹中。

image

要與其他參數關聯,請選擇添加的資料夾,並將"ID"重新設置為"INSTALLFOLDER"。

image

創建「開始」功能表的快捷方式。 因為每次創建此快捷方式的作業都是相同的, 保留 XML 代碼並稍後粘貼可能更快。 (下圖的選擇部分)

image

從 exe 檔的右鍵按單下選單中選擇「新建」和「短」。

image

添加 Shortcut 後,選擇它,然後右鍵按下空白以添加屬性。

image

新增以下參數: (請根據程式重新命名唯一名稱。

屬性
Id LITTLESAVIORTRIAL. EXE_shortcut
Name 小劍試用版
Directory ProgramMenuDir
WorkingDirectory INSTALLDIR
Icon LITTLESAVIOR. ICO
IconIndex 0
Advertise yes

image

然後選擇「功能」選項卡。

添加任何添加的檔,並刪除任何不再需要的檔。

image

image

image

如果UI中的操作很麻煩,則可以直接編輯 XML。

image

保存。

image

生成和運行確認

在視覺工作室中生成並創建安裝程式。

在安裝早期版本時,請運行新版本的安裝程式,以確保安裝它。

此外,請確保在安裝新版本時運行安裝程式的早期版本時無法安裝它。