共用方式為


網際網路下載啟動載入

使用 Windows Installer 時,Windows Installer 開發人員的 Windows SDK 元件中會包含可設定的啟動程式可執行檔 (Setup.exe) 和組態工具 (Msistuff.exe)。 藉由使用Msistuff.exe在 Setup.exe 中設定資源,開發人員可以輕鬆地建立 Windows Installer 套件的 Web 安裝。

啟動程式可執行檔所需的最低安裝程式版本是 Windows Installer 2.0 版。 應用程式可以使用 DllGetVersion 取得安裝程式版本 如需詳細資訊, 請參閱判斷 Windows Installer 版本

Windows Installer SDK 提供的啟動程序可執行檔會執行下列動作:

  • 呼叫 WinVerifyTrust 來驗證.msi檔案的數字簽名。 Windows Installer 2.0 版和更新版本提供主體介面套件 (SIP) 來啟用 Windows Installer 套件的簽署。
  • 如有必要,請升級計算機上的 Windows Installer 版本。

您可以使用Msistuff.exe來顯示或設定下列Setup.exe資源。

資源識別碼 描述
ISETUPPROPNAME_BASEURL Setup.exe的基底 URL 位置。 如果未指定任何值,Setup.exe預設為卸除式媒體的位置。 只有以 URL 為基礎的安裝會受到 WinVerifyTrust 的檢查 URL 上的尾端正斜線是選擇性的。 此資源是選擇性的。
ISETUPPROPNAME_DATABASE .msi檔的名稱。 這是相對於Setup.exe程式位置所指定之.msi檔案的相對路徑。 如果未指定資源ISETUPPROPNAME_PATCH,則需要此資源。 無法同時指定ISETUPPROPNAME_DATABASE和ISETUPPROPNAME_PATCH。 只能指定其中一個。
ISETUPPROPNAME_OPERATION 要執行的作業類型。 可能的值為 INSTALL、MINPATCH、MAJPATCH 和 INSTALLUPD。 INSTALL 值等同於第一次安裝套件。 MINPATCH 值表示 PATCH 屬性中指定的修補程式是小型或次要的升級修補程式。 MAJPATCH 值表示 PATCH 屬性中指定的修補程式是主要的更新修補程式。 INSTALLUPD 表示安裝可能是第一次安裝或更新。 使用 INSTALLUPD 時,會檢查產品是否存在啟動程式。 如果產品存在,則會設定 recache 套件旗標並執行重新安裝;否則,會執行一般安裝。 請注意,INSTALLUPD 應該只用於未變更原始程式碼的小型和次要升級套件。 在主要升級中,不需要重新安裝,因為產品代碼會變更,基本上會建立全新的產品。 除了 FindRelatedProducts、MigrateFeatureStates 和 RemoveExistingProducts 動作之外,升級數據表也會處理原始產品的升級。 因此,INSTALL 選項就已足夠。 如果遺漏此資源,則如果撰寫ISETUPPROPNAME_DATABASE屬性,則會假設 INSTALL 作業。 否則,如果撰寫ISETUPPROPNAME_PATCH屬性,則會假設MINPATCH。 這是選用值。
ISETUPPROPNAME_PRODUCTNAME 產品的名稱。 這是下載的使用者介面中橫幅文字中使用的名稱。 此資源是選擇性的。 如果省略,則名稱預設為 「產品」。
ISETUPPROPNAME_MINIMUM_MSI 所需的 Windows Installer 最低版本。 如果計算機上未安裝 Windows Installer 的最低版本,則會呼叫適當的 Instmsi.exe 來升級 Windows Installer。 此屬性的值與PID_PAGECOUNT值的格式相同。 如需詳細資訊,請參閱 Page Count Summary 屬性。 此值必須至少為 200,識別 Windows Installer 2.0 版的值。 需要此資源。
ISETUPPROPNAME_INSTLOCATION Windows Installer 升級可執行檔的基底 URL 位置。 可能會省略此資源。 如果省略這個值,升級可執行文件的預設位置是Setup.exe的位置。
ISETUPPROPNAME_INSTMSIA Windows Installer 升級可執行檔的 ANSI 版本名稱。 這是與ISETUPPROPNAME_INSTLOCATION所指定位置相對Instmsi.exe ANSI 版本的相對路徑。 需要此資源。
ISETUPPROPNAME_INSTMSIW Windows Installer 升級可執行檔的 Unicode 版本名稱。 這是與ISETUPPROPNAME_INSTLOCATION所指定位置相對Instmsi.exe Unicode 版本的相對路徑。 需要此資源。
ISETUPPROPNAME_PATCH .msp 檔案的名稱。 這是相對於Setup.exe程式位置所指定之 .msp 檔案的相對路徑。 如果未指定資源ISETUPPROPNAME_DATABASE,則需要此資源。 無法同時指定ISETUPPROPNAME_DATABASE和ISETUPPROPNAME_PATCH。 只能指定其中一個。
ISETUPPROPNAME_PROPERTIES PROPERTY=VALUE 字串。 這些是命令行上要包含的 PROPERTY=VALUE 配對。 此選項是選擇性的。

 

例如,下列ISETUPPROPNAME_BASEURL和ISETUPPROPNAME_DATABASE值會用於下列假設套件位置。

實際套件位置 資源值
https://www.blueyonderairlines.com/Products/Product1/product1.msi ISETUPPROPNAME_BASEURL = https://www.blueyonderairlines.com/Products/Product1 ISETUPPROPNAME_DATABASE = product1.msi
https://www.blueyonderairlines.com/Products/Product1/product1.msi ISETUPPROPNAME_BASEURL = https://www.blueyonderairlines.com/Products/Product1 ISETUPPROPNAME_DATABASE = ../Products1/product1.msi
e:\product1.msi 省略ISETUPPROPNAME_BASEURL。 ISETUPPROPNAME_DATABASE = product1.msi
e:\setup\product1.msi (目前執行中Setup.exe的位置為 e:\setup.exe。
省略ISETUPPROPNAME_BASEURL。 ISETUPPROPNAME_DATABASE = Setup\product1.msi

 

Setup.exe命令行參數

下表列出可與 Windows Installer 開發人員 Windows SDK 元件隨附Setup.exe搭配使用的命令選項。 在沒有任何命令行選項的情況下叫用時,Setup.exe預設為透過設定的資源指定的行為。 命令行選項互斥,一次只能使用其中一個選項。

選項 使用方式 意義
/一個 setup.exe /a 起始系統管理安裝。 如果在 Setup.exe 中設定了ISETUPPROPNAME_DATABASE屬性,則可以使用此選項來執行產品的系統管理安裝。 如果已設定ISETUPPROPNAME_PATCH資源,則不支援此命令行選項。
/一個 setup.exe /a <現有系統管理安裝的完整路徑> 如果在 Setup.exe 中設定ISETUPPROPNAME_PATCH屬性,則此選項可用來修補產品的現有系統管理安裝。 如果已設定ISETUPPROPNAME_DATABASE資源,則不支援此命令行選項。
/v setup.exe /v <檔案的完整路徑> 使用 WinVerifyTrust 驗證檔案上的簽章。 使用此選項時,不會顯示任何UI。 在此情況下,信任檢查的結果是從執行Setup.exe取得的傳回值。
/?   顯示說明對話框,指出有效的自變數。 注意:如果提供無效的自變數,也會顯示說明對話方塊。

 

如需詳細資訊,請參閱 URL 型 Windows Installer 安裝範例