How to: Criar um manifesto de produto

Para implantar os pré-requisitos para seu aplicativo, você pode criar um pacote de bootstrapper. Um pacote de bootstrapper contém um arquivo de manifesto único produto, mas um manifesto de pacote para cada localidade. O manifesto de pacote contém a aspectos específicos de localização do seu pacote. Isso inclui seqüências de caracteres, os contratos de licença de usuário final e os pacotes de idiomas.

Para obter mais informações sobre manifestos de produto, consulte How to: Criar um manifesto de pacote.

Criando o manifesto do produto

Para criar o manifesto do produto

  1. Crie um diretório para o pacote de bootstrapper. Este exemplo usa C:\package.

  2. No Visual Studio, crie um novo arquivo XML chamado Product. XMLe salve-o para a pasta C:\package.

  3. Adicione o seguinte XML para descrever o código de produto e o namespace XML para o pacote. Substitua o código de produto com um identificador exclusivo para o pacote.

    <Product
    xmlns="https://schemas.microsoft.com/developer/2004/01/bootstrapper" 
    ProductCode="Custom.Bootstrapper.Package">
    
  4. Adicione o XML para especificar que o pacote tem uma dependência. Este exemplo usa uma dependência no 3.1 do Microsoft Windows Installer.

        <RelatedProducts>
            <DependsOnProduct Code="Microsoft.Windows.Installer.3.1" />
          </RelatedProducts>
    
  5. Adicione o XML para listar todos os arquivos que estão no pacote bootstrapper. Este exemplo usa o nome de arquivo do pacote CorePackage.msi.

        <PackageFiles>
            <PackageFile Name="CorePackage.msi"/>
        </PackageFiles>
    
  6. Copiar ou mover o arquivo CorePackage.msi para a pasta C:\package.

  7. Adicione o XML para instalar o pacote usando os comandos de bootstrapper. O bootstrapper adiciona automaticamente o /qn Sinalizar para o arquivo. msi, que irá instalar silenciosamente. Se o arquivo for um. exe, o bootstrapper executa o arquivo. exe usando o shell. O XML a seguir mostra o sem argumentos para CorePackage.msi, mas você pode colocar o argumento de linha de comando para o atributo de argumentos.

        <Commands>
            <Command PackageFile="CorePackage.msi" Arguments="">
    
  8. Adicione o seguinte XML para verificar se o pacote de bootstrapper está instalado. Substitua o código de produto com o GUID do componente redistribuível.

            <InstallChecks>
                <MsiProductCheck 
                    Property="IsMsiInstalled" 
                    Product="{XXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}"/>
            </InstallChecks>
    
  9. Adicione o XML para alterar o comportamento de bootstrapper dependendo se o componente de bootstrapper já estiver instalado. Se o componente estiver instalado, o pacote de bootstrapper não é executado. O XML a seguir verifica se o usuário atual for um administrador, porque este componente requer privilégios administrativos.

            <InstallConditions>
                <BypassIf 
                   Property="IsMsiInstalled" 
                   Compare="ValueGreaterThan" Value="0"/>
                <FailIf Property="AdminUser" 
                    Compare="ValueNotEqualTo" Value="True"
                    String="NotAnAdmin"/>
            </InstallConditions>
    
  10. Adicione o XML para definir códigos de saída, se a instalação for bem-sucedida e se uma reinicialização é necessária. O XML a seguir demonstra a que códigos, que indicam que o bootstrapper não continuará instalando pacotes de saída da falha e FailReboot.

            <ExitCodes>
                <ExitCode Value="0" Result="Success"/>
                <ExitCode Value="1641" Result="SuccessReboot"/>
                <ExitCode Value="3010" Result="SuccessReboot"/>
                <DefaultExitCode Result="Fail" String="GeneralFailure"/>
            </ExitCodes>
    
  11. Adicione o seguinte XML para finalizar a seção para comandos de bootstrapper.

            </Command>
        </Commands>
    
  12. Mova a pasta de C:\package para o diretório de bootstrapper de Visual Studio. Para 2010 Visual Studio, este é o diretório de \Program Files\Microsoft SDKs\Windows\v7.0A\Bootstrapper\Packages.

Exemplo

O manifesto de produto contém instruções de instalação para pré-requisitos personalizados.

<?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>

Consulte também

Referência

Product and Package Schema Reference