建立啟動載入器套件
安裝程式 (Setup Program) 是一種泛型安裝程式 (Installer),可設定來偵測和安裝可轉散發元件,例如 Windows Installer (.msi) 檔案和可執行程式。安裝程式也稱為啟動載入器。這是透過一組 XML 資訊清單進行程式設計,這組資訊清單指定中繼資料來管理元件的安裝。
啟動載入器會先偵測所有必要條件是否已經安裝。如果有必要條件未安裝,則啟動載入器會先顯示授權合約。接著,在使用者接受授權合約之後,就會開始安裝必要條件。不過,如果啟動載入器偵測到所有必要條件,就會直接啟動應用程式安裝程式。
建立自訂套件
您可以使用 (英文) 建立描述啟動載入器套件的資訊清單。或者,您也可以使用 Visual Studio 中的 XML 編輯器來產生資訊清單。如需詳細資訊,請參閱 HOW TO:建立封裝資訊清單和 HOW TO:建立產品資訊清單。如需查看建立啟動載入器套件的範例,請參閱逐步解說:建立自訂啟動載入器以顯示隱私權提示。
若要建立啟動載入器套件,您必須將 EXE 或 MSI 檔案形式的可轉散發套件提供給「啟動載入器資訊清單產生器」。然後,啟動載入器資訊清單產生器就會建立下列檔案:
產品資訊清單 (product.xml),包含套件的語言中性中繼資料。這包含可轉散發元件所有當地語系化版本通用的中繼資料。
套件資訊清單 (package.xml),包含語言特定的中繼資料;通常包含當地語系化的錯誤訊息。每個元件的當地語系化版本至少必須各有一個套件資訊清單。
建立這些檔案之後,請將產品資訊清單檔案放到以自訂啟動載入器命名的資料夾中。套件資訊清單檔案則放到以地區設定命名的資料夾中。例如,如果套件資訊清單檔案適用於英文版轉散發套件,請將該檔案放入叫做 en 的資料夾。針對每個地區設定重複此程序,例如 ja 代表日文,de 代表德文。最後的自訂啟動載入器套件可以有下列資料夾結構。
CustomBootstrapperPackage
product.xml
CustomBootstrapper.msi
de
eula.rtf
package.xml
en
eula.rtf
package.xml
ja
eula.rtf
package.xml
最後,請將可轉散發檔案複製到啟動載入器資料夾位置中。如需詳細資訊,請參閱 HOW TO:建立當地語系化啟動載入器套件。
\Program Files\Microsoft SDKs\Windows\v7.0A\Bootstrapper\Packages
您也可以從下列登錄機碼中的 [路徑] 值,決定啟動載入器資料夾位置。
HKLM\Software\Microsoft\GenericBootstrapper\4.0
在 64 位元系統上,請使用下列的登錄機碼:
HKLM\Software\Wow6432Node\Microsoft\GenericBootstrapper\4.0
每個可轉散發元件隨即出現在套件目錄底下,它自己的子目錄中。產品資訊清單和可轉散發檔案會放在這個子目錄中。元件的當地語系化版本會和套件資訊清單一起放在依文化特性名稱命名的子資料夾中。如需文化特性名稱的詳細資訊,請參閱Localization 屬性中的表格。
當這些檔案複製到啟動載入器資料夾之後,啟動載入器套件就會自動出現在 Visual Studio 的必要條件對話方塊中。如果您的自訂啟動載入器套件沒有出現在其中,請關閉再重新開啟 [必要條件] 對話方塊。如需詳細資訊,請參閱必要條件對話方塊。
下表顯示啟動載入器會自動填入的屬性。
屬性 |
描述 |
---|---|
ApplicationName |
應用程式的名稱。 |
ProcessorArchitecture |
可執行檔之目標平台的處理器以及每個字組的位元。包括下列值:
|
Microsoft Windows 95、Windows 98 或 Windows ME 作業系統的版本編號。版本的語法是 Major.Minor.ServicePack。 |
|
Windows NT、Windows 2000、Windows XP、Windows Vista、Windows Server 2008 或 Windows 7 作業系統的版本編號。版本的語法是 Major.Minor.ServicePack。 |
|
在安裝期間執行的 Windows Installer 組件 (msi.dll) 版本。 |
|
如果使用者具有管理員權限,則會設定此屬性。值為 true 或 false。 |
|
InstallMode |
安裝模式指出需要從何處安裝元件。包括下列值:
|
將可轉散發套件與應用程式安裝分開放置
您可以防止可轉散發檔案部署在安裝專案中。若要這麼做,請在 .NET Framework 目錄底下的 RedistList 資料夾中建立可轉散發清單。
%ProgramFiles%\Microsoft.NET\RedistList
可轉散發清單是 XML 檔案,您應該使用下列格式予以命名:公司名稱.元件名稱.RedistList.xml。例如,如果元件稱為 Datawidgets,由 Acme 製作,請使用 Acme.DataWidgets.RedistList.xml。以下是可能的可轉散發清單內容範例:
<?xml version="1.0" encoding="UTF-8"?>
<FileList Redist="Acme.DataWidgets" >
<File AssemblyName="Acme.DataGrid" Version="1.0.0.0" PublicKeyToken="b03f5f7f11d50a3a" Culture="neutral" ProcessorArchitecture="MSIL" InGAC="true" />
</FileList>
請參閱
工作
HOW TO:使用 ClickOnce 應用程式安裝必要條件
參考
其他資源
使用 Visual Studio 2005年器著手進行安裝