建立產品資訊清單

若要部署應用程式的必要條件,您可以建立啟動程序套件。 啟動程序封裝包含單一產品資訊清單檔案,但每個地區設定有一個封裝資訊清單。 封裝資訊清單包含封裝的當地語系化特定層面。 這包括字串、使用者授權合約和語言套件。

如需封裝資訊清單的詳細資訊,請參閱如何:建立封裝資訊清單

建立產品資訊清單

建立產品資訊清單

  1. 建立用於啟動程序封裝的目錄。 此範例使用 C:\package。

  2. 在 Visual Studio 中,建立名為 product.xml 的新 XML 檔案,並將它儲存至 C:\package 資料夾。

  3. 新增下列 XML 來描述封裝的 XML 命名空間和產品代碼。 將產品代碼取代為封裝的唯一識別碼。

    <Product
    xmlns="http://schemas.microsoft.com/developer/2004/01/bootstrapper"
    ProductCode="Custom.Bootstrapper.Package">
    
  4. 新增 XML 以指定封裝具有相依性。 此範例使用 Microsoft Windows Installer 3.1 的相依性。

    <RelatedProducts>
        <DependsOnProduct Code="Microsoft.Windows.Installer.3.1" />
      </RelatedProducts>
    
  5. 新增 XML 以列出啟動程序封裝中的所有檔案。 此範例會使用封裝檔案名稱 CorePackage.msi

    <PackageFiles>
        <PackageFile Name="CorePackage.msi"/>
    </PackageFiles>
    
  6. 複製或移動 CorePackage.msi 檔案至 C:\package 資料夾。

  7. 使用啟動程序命令新增 XML 以安裝封裝。 啟動程序會自動將 /qn 旗標新增至 .msi 檔案,其會以無訊息方式安裝。 如果檔案是 .exe,啟動程序會使用殼層來執行 .exe 檔案。 下列 XML 不會顯示 CorePackage.msi 的引數,但您可以將命令列引數放入 Arguments 屬性中。

    <Commands>
        <Command PackageFile="CorePackage.msi" Arguments="">
    
  8. 新增下列 XML 以檢查是否已安裝此啟動程序封裝。 將原始程式碼取代為可轉散發元件的 GUID。

    <InstallChecks>
        <MsiProductCheck
            Property="IsMsiInstalled"
            Product="{XXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}"/>
    </InstallChecks>
    
  9. 新增 XML 以根據是否已安裝啟動程序元件來變更啟動程序行為。 如果已安裝元件,啟動程序封裝就不會執行。 下列 XML 會檢查目前使用者是否為系統管理員,因為此元件需要系統管理權限。

    <InstallConditions>
        <BypassIf
           Property="IsMsiInstalled"
           Compare="ValueGreaterThan" Value="0"/>
        <FailIf Property="AdminUser"
            Compare="ValueNotEqualTo" Value="True"
            String="NotAnAdmin"/>
    </InstallConditions>
    
  10. 如果安裝成功,以及如果需要重新開機,請新增 XML 來設定結束代碼。 下列 XML 會示範 Fail 和 FailReboot 結束代碼,指出啟動程序不會繼續安裝封裝。

    <ExitCodes>
        <ExitCode Value="0" Result="Success"/>
        <ExitCode Value="1641" Result="SuccessReboot"/>
        <ExitCode Value="3010" Result="SuccessReboot"/>
        <DefaultExitCode Result="Fail" String="GeneralFailure"/>
    </ExitCodes>
    
  11. 新增下列 XML 來結束啟動程序命令的區段。

        </Command>
    </Commands>
    
  12. C:\package 資料夾移至 Visual Studio 啟動程序目錄。 對於較舊版本的 Visual Studio,這是 \Program Files\Microsoft SDKs\Windows\v7.0A\Bootstrapper\Packages 目錄。

範例

產品資訊清單包含自訂必要條件的安裝指示。

<?xml version="1.0" encoding="utf-8" ?>
<Product
  xmlns="http://schemas.microsoft.com/developer/2004/01/bootstrapper"
  ProductCode="Custom.Bootstrapper.Package">

  <RelatedProducts>
    <DependsOnProduct Code="Microsoft.Windows.Installer.3.1" />
  </RelatedProducts>

  <PackageFiles>
    <PackageFile Name="CorePackage.msi"/>
  </PackageFiles>

  <InstallChecks>
    <MsiProductCheck Property="IsMsiInstalled"
      Product="{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}"/>
  </InstallChecks>

  <Commands>
    <Command PackageFile="CorePackage.msi" Arguments="">

      <InstallConditions>
        <BypassIf Property="IsMsiInstalled"
          Compare="ValueGreaterThan" Value="0"/>
        <FailIf Property="AdminUser"
          Compare="ValueNotEqualTo" Value="True"
         String="NotAnAdmin"/>
      </InstallConditions>

      <ExitCodes>
        <ExitCode Value="0" Result="Success"/>
        <ExitCode Value="1641" Result="SuccessReboot"/>
        <ExitCode Value="3010" Result="SuccessReboot"/>
        <DefaultExitCode Result="Fail" String="GeneralFailure"/>
      </ExitCodes>
    </Command>
  </Commands>
</Product>