Aracılığıyla paylaş


Ürün Bildirimi Nasıl Oluşturulur

Uygulamanız için önkoşulları dağıtmak için bir önyükleyici paketi oluşturabilirsiniz. Önyükleyici paket, her bir yerel ayar için olmak üzere tek bir ürün bildirim dosyası içerir. Paket bildirimi paketinizin yerelleştirmeye özgü yönlerini içerir. Bu, dizeler, son kullanıcı lisans sözleşmeleri ve dil paketlerini içerir.

Ürün bildirimleri hakkında daha fazla bilgi için bkz. Paket Bildirimi Nasıl Oluşturulur.

Ürün Listesi Oluşturma

Ürün bildirimi oluşturmak için

  1. Önyükleyici paketi için bir dizin oluşturun. Bu örnek, C:\package kullanır.

  2. Visual Studio'da product.xml adında yeni bir XML dosyası oluşturun ve C:\package klasörüne kaydedin.

  3. Paketin XML ad alanını ve ürün kodunu tanımlamak için aşağıdaki XML'yi ekleyin. Ürün kodunu paket için benzersiz bir benzersiz tanımlayıcıyla değiştirin.

    <Product
    xmlns="https://schemas.microsoft.com/developer/2004/01/bootstrapper" 
    ProductCode="Custom.Bootstrapper.Package">
    
  4. Paketin bir bağımlılığı olduğunu belirtmek için XML ekleyin. Bu örnek, Microsoft Windows Installer 3.1'e bağımlılık kullanır.

        <RelatedProducts>
            <DependsOnProduct Code="Microsoft.Windows.Installer.3.1" />
          </RelatedProducts>
    
  5. Önyükleyici paketinde bulunan tüm dosyaları listelemek için XML ekleyin. Bu örnek, paket dosyası adı CorePackage.msi öğesini kullanır.

        <PackageFiles>
            <PackageFile Name="CorePackage.msi"/>
        </PackageFiles>
    
  6. CorePackage.msi dosyasını C:\package klasörüne kopyalayın veya taşıyın.

  7. Önyükleyici komutlarını kullanarak paketi yüklemek için XML ekleyin. Önyükleyici, sessizce yükleyecek olan .msi dosyasına /qn bayrağını ekler. Dosya bir.exe dosyası ise, önyükleyici kabuğu kullanarak.exe dosyasını çalıştırır. Aşağıdaki XML CorePackage.msi öğesine bağımsız değişkenler göstermez ancak Bağımsız Değişkenler özniteliğine komut satırı bağımsız değişkeni koyabilirsiniz.

        <Commands>
            <Command PackageFile="CorePackage.msi" Arguments="">
    
  8. Bu önyükleyici paketinin yüklü olup olmadığını denetlemek için aşağıdaki XML'yi ekleyin. Ürün kodunu yeniden dağıtılabilir bileşen için GUID ile değiştirin.

            <InstallChecks>
                <MsiProductCheck 
                    Property="IsMsiInstalled" 
                    Product="{XXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}"/>
            </InstallChecks>
    
  9. Önyükleyici bileşeninin daha önce yüklenmesine bağlı olarak bağlı önyükleyici davranışını değiştirmek için XML ekleyin. Bileşen yüklüyse, önyükleyici paket çalışmaz. Aşağıdaki XML geçerli kullanıcının yönetici olup olmadığını denetler çünkü bu bileşen yönetimsel ayrıcalıklar gerektirir.

            <InstallConditions>
                <BypassIf 
                   Property="IsMsiInstalled" 
                   Compare="ValueGreaterThan" Value="0"/>
                <FailIf Property="AdminUser" 
                    Compare="ValueNotEqualTo" Value="True"
                    String="NotAnAdmin"/>
            </InstallConditions>
    
  10. Yükleme başarılı olursa ve yeniden başlatma gerekirse çıkış kodlarını ayarlamak için XML ekleyin. Aşağıdaki XML önyükleyicinin paketleri yüklemeye devam edeceğini gösteren Hata ve FailReboot çıkış kodlarını gösterir.

            <ExitCodes>
                <ExitCode Value="0" Result="Success"/>
                <ExitCode Value="1641" Result="SuccessReboot"/>
                <ExitCode Value="3010" Result="SuccessReboot"/>
                <DefaultExitCode Result="Fail" String="GeneralFailure"/>
            </ExitCodes>
    
  11. Önyükleyici komutlar bölümünü sonlandırmak için aşağıdaki XML'yi ekleyin.

            </Command>
        </Commands>
    
  12. C:\package klasörünü Visual Studio önyükleyici dizinine taşıyın. Visual Studio 2010 için, bu \Program Files\Microsoft SDKs\Windows\v7.0A\Bootstrapper\Packages dizinidir.

Örnek

Ürün bildirimi, özel önkoşullara ilişkin yükleme yönergeleri içerir.

<?xml version="1.0" encoding="utf-8" ?>
<Product
  xmlns="https://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 Product="IsMsiInstalled" 
      Property="{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>

Ayrıca bkz.

Başvuru

Ürün ve Paket Şema Başvurusu