Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Este artigo mostra como criar manualmente um arquivo do App Installer que define um conjunto relacionado com recursos de atualização e reparo automáticos. Um conjunto relacionado não é uma entidade, mas sim uma combinação de um pacote principal e pacotes opcionais.
Para poder instalar um conjunto relacionado como uma entidade, devemos ser capazes de especificar o pacote principal e o pacote opcional como um. Para fazer isso, precisaremos criar um arquivo XML com uma extensão .appinstaller para definir um conjunto relacionado. O App Installer consome o arquivo *.appinstaller e permite que o usuário instale todos os pacotes definidos com um único clique.
Durante a implantação, o arquivo do App Installer irá:
- O pacote de aplicativos do Windows referenciado no atributo
URIdo elemento < MainPackage > irá validar osName,PublishereVersiondos atributos do pacote do aplicativo do Windows de destino. Se o elemento Package/Identity no manifesto do pacote do aplicativo do Windows não corresponder, a instalação falhará. - Crie uma referência aos URIs de Atualização e Reparação para a família de pacotes.
Como criar um arquivo do App Installer
Para distribuir seu conjunto relacionado como uma entidade, você deve criar um arquivo do App Installer que contenha os elementos exigidos por esse esquema do instalador do aplicativo.
- Crie o ficheiro *.AppInstaller.
- Especifique os atributos de arquivo do App Installer.
- Especifique o pacote principal do aplicativo do Windows.
- Especifique o pacote opcional relacionado.
- Especifique a dependência do Pacote de Estrutura da aplicação Windows.
- Especifique os caminhos de URI de atualização.
- Especifique os caminhos de URI de reparo.
- Especifique as configurações de atualização.
Exemplo de um arquivo do App Installer
Seguindo as etapas fornecidas acima, você terá criado com êxito um arquivo do App Installer semelhante ao seguinte:
<?xml version="1.0" encoding="utf-8"?>
<AppInstaller
xmlns="http://schemas.microsoft.com/appx/appinstaller/2017/2"
Version="1.0.0.0"
Uri="http://mywebservice.azurewebsites.net/appset.appinstaller" >
<MainBundle
Name="Contoso.MainApp"
Publisher="CN=Contoso"
Version="2.23.12.43"
Uri="http://mywebservice.azurewebsites.net/mainapp.msixbundle" />
<OptionalPackages>
<Bundle
Name="Contoso.OptionalApp1"
Publisher="CN=Contoso"
Version="2.23.12.43"
Uri="http://mywebservice.azurewebsites.net/OptionalApp1.msixbundle" />
<Bundle
Name="Contoso.OptionalApp2"
Publisher="CN=Contoso"
Version="2.23.12.43"
Uri="http://mywebservice.azurewebsites.net/OptionalApp2.msixbundle" />
<Package
Name="Fabrikam.OptionalApp3"
Publisher="CN=Fabrikam"
Version="10.34.54.23"
Uri="http://mywebservice.azurewebsites.net/OptionalApp3.msix"
ProcessorArchitecture="x64" />
</OptionalPackages>
<UpdateURIs>
<UpdateURI>http://mywebservice.azurewebsites.net/appset.appinstaller</UpdateURI>
<UpdateURI>http://mywebservice2.azurewebsites.net/appset.appinstaller</UpdateURI>
</UpdateURIs>
<RepairURIs>
<RepairURI>http://mywebservice.azurewebsites.net/appset.appinstaller</RepairURI>
<RepairURI>http://mywebservice2.azurewebsites.net/appset.appinstaller</RepairURI>
</RepairURIs>
<UpdateSettings>
<OnLaunch HoursBetweenUpdateChecks="0"/>
</UpdateSettings>
</AppInstaller>
Etapa 1: Criar o arquivo *.appinstaller
Usando um editor de texto (Notepad.exe), crie um novo arquivo com uma extensão de nome de arquivo de *. AppInstaller
Como:
- Abra o menu Iniciar.
- Digite o seguinte:
notepad.exe. - Abra o menu Arquivo .
- Selecione Salvar como no menu suspenso.
Etapa 2: adicionar o modelo básico
Inclua o AppInstaller elemento no arquivo do App Installer observando a versão, o caminho e o local de rede do arquivo do App Installer. As informações no AppInstaller elemento serão consumidas ao instalar as aplicações do Windows associadas.
| Elemento | Descrição |
|---|---|
| xmlns | O Namespace XML |
| Versão | A versão do ficheiro do Instalador de Aplicações numa notação quadriculada (1.0.0.0). |
| URI | Um caminho de URI para o arquivo atual do App Installer, acessível pelo dispositivo. |
Como:
Abra o ficheiro criado no Passo 1.
Copie o seguinte conteúdo XML para o seu ficheiro *.AppInstaller.
<?xml version="1.0" encoding="utf-8"?> <AppInstaller xmlns="http://schemas.microsoft.com/appx/appinstaller/2021" Version="" Uri="" > </AppInstaller>Atualize o
Versionatributo com a versão do arquivo do App InstallerAtualize o atributo
URIcom o local de rede onde este arquivo *AppInstaller ficará acessível.
Etapa 3: adicionar as informações principais do pacote
Os <MainPackage> e <MainBundle> são usados para identificar o aplicativo principal do Windows que será instalado usando o arquivo do App Installer. O <MainPackage> é usado quando o instalador do aplicativo do Windows é um *.msix ou *.appx. Use o <MainBundle> quando o instalador de aplicativos do Windows for um instalador de aplicativos do Windows incluído, com uma extensão de *.msixbundle ou *.appxbundle.
| Elemento | Descrição |
|---|---|
| Nome | O nome do aplicativo principal que está sendo distribuído por meio do arquivo do App Installer. Isso pode ser encontrado executando o seguinte cmdlet do PowerShell: $(Get-AppxPackage [AppName]).Name. |
| Editora | O nome canônico do certificado de editor usado para assinar o instalador principal do aplicativo do Windows. Isso pode ser encontrado executando o seguinte cmdlet do PowerShell: $(Get-AppxPackage [AppName]).Publisher. |
| Versão | A versão do instalador principal da aplicação do Windows numa notação de quatro dígitos (1.0.0.0). Isso pode ser encontrado executando o seguinte cmdlet do PowerShell: $(Get-AppxPackage [AppName]).Version. |
| Arquitetura do Processador | A Arquitetura sobre a qual o instalador primário de aplicativos do Windows está a instalar. |
| URI | O caminho de URI para a mídia de instalação da aplicação principal do Windows. |
As informações no atributo <MainBundle> ou <MainPackage> devem corresponder ao elemento Package/Identity no manifesto do pacote de aplicações ou no manifesto do pacote da aplicação, conforme aplicável.
Instalador de aplicativos do Windows
Se o pacote principal da aplicação for um ficheiro .msix ou .appx, então use <MainPackage>, conforme mostrado abaixo. Certifique-se de incluir o ProcessorArchitecture, pois é obrigatório para pacotes que não são bundles.
<?xml version="1.0" encoding="utf-8"?>
<AppInstaller
xmlns="http://schemas.microsoft.com/appx/appinstaller/2021"
Version="1.0.0.0"
Uri="http://mywebservice.azurewebsites.net/appset.appinstaller" >
<MainPackage
Name="Contoso.MainApp"
Publisher="CN=Contoso"
Version="2.23.12.43"
ProcessorArchitecture="x64"
Uri="http://mywebservice.azurewebsites.net/mainapp.msix" />
</AppInstaller>
Instalador do pacote de aplicativos do Windows
Se o pacote principal do aplicativo for um arquivo .msixbundle ou .appxbundle, use o <MainBundle> no lugar de <MainPackage> , conforme mostrado abaixo. Para pacotes, ProcessorArchitecture não é necessário.
<?xml version="1.0" encoding="utf-8"?>
<AppInstaller
xmlns="http://schemas.microsoft.com/appx/appinstaller/2021"
Version="1.0.0.0"
Uri="http://mywebservice.azurewebsites.net/appset.appinstaller" >
<MainBundle
Name="Contoso.MainApp"
Publisher="CN=Contoso"
Version="2.23.12.43"
Uri="http://mywebservice.azurewebsites.net/mainapp.msixbundle" />
</AppInstaller>
Etapa 4: Adicionar os pacotes opcionais
Semelhante ao atributo principal do pacote de aplicativo, se o pacote opcional puder ser um pacote de aplicativo ou um conjunto de aplicativos, o elemento filho dentro do atributo <OptionalPackages> deverá ser <Package> ou <Bundle> respectivamente. As informações do pacote nos elementos filho devem corresponder ao elemento de identidade no pacote ou manifesto do pacote.
| Elemento | Descrição |
|---|---|
| Nome | O nome do aplicativo opcional que está sendo distribuído por meio do arquivo do App Installer. Isso pode ser encontrado executando o seguinte cmdlet do PowerShell: $(Get-AppxPackage [AppName]).Name. |
| Editora | O nome canónico do certificado do editor usado para assinar o instalador opcional de aplicações do Windows. Isso pode ser encontrado executando o seguinte cmdlet do PowerShell: $(Get-AppxPackage [AppName]).Publisher. |
| Versão | A versão do instalador de aplicações opcional do Windows em notação de quatro pontos (1.0.0.0). Isso pode ser encontrado executando o seguinte cmdlet do PowerShell: $(Get-AppxPackage [AppName]).Version. |
| Arquitetura do Processador | A arquitetura na qual o instalador de aplicações opcionais do Windows está a instalar. |
| URI | O caminho de URI para a mídia de instalação da aplicação principal do Windows. |
<?xml version="1.0" encoding="utf-8"?>
<AppInstaller
xmlns="http://schemas.microsoft.com/appx/appinstaller/2021"
Version="1.0.0.0"
Uri="http://mywebservice.azurewebsites.net/appset.appinstaller" >
<MainBundle
Name="Contoso.MainApp"
Publisher="CN=Contoso"
Version="2.23.12.43"
Uri="http://mywebservice.azurewebsites.net/mainapp.msixbundle" />
<OptionalPackages>
<Bundle
Name="Contoso.OptionalApp1"
Publisher="CN=Contoso"
Version="2.23.12.43"
Uri="http://mywebservice.azurewebsites.net/OptionalApp1.msixbundle" />
<Package
Name="Fabrikam.OptionalApp3"
Publisher="CN=Fabrikam"
Version="10.34.54.23"
ProcessorArchitecture="x64"
Uri="http://mywebservice.azurewebsites.net/OptionalApp3.msix" />
</OptionalPackages>
</AppInstaller>
Etapa 5: Adicionar dependências
No elemento dependencies, você pode especificar os pacotes de estrutura necessários para o pacote principal ou os pacotes opcionais.
| Elemento | Descrição |
|---|---|
| Nome | O nome do aplicativo de dependência que está sendo distribuído por meio do arquivo do App Installer. Isso pode ser encontrado executando o seguinte cmdlet do PowerShell: $(Get-AppxPackage [AppName]).Name. |
| Editora | O nome canônico do certificado do editor usado para assinar o instalador de aplicações da dependência do Windows. Isso pode ser encontrado executando o seguinte cmdlet do PowerShell: $(Get-AppxPackage [AppName]).Publisher. |
| Versão | A versão do instalador de aplicações do Windows para dependências, expressa em notação de quatro pontos (1.0.0.0). Isso pode ser encontrado executando o seguinte cmdlet do PowerShell: $(Get-AppxPackage [AppName]).Version. |
| Arquitetura do Processador | A arquitetura em que o instalador de aplicativos do Windows das dependências está a ser instalado. |
| URI | O caminho de URI para a mídia de instalação do aplicativo Windows de dependência. |
<?xml version="1.0" encoding="utf-8"?>
<AppInstaller
xmlns="http://schemas.microsoft.com/appx/appinstaller/2021"
Version="1.0.0.0"
Uri="http://mywebservice.azurewebsites.net/appset.appinstaller" >
<MainBundle
Name="Contoso.MainApp"
Publisher="CN=Contoso"
Version="2.23.12.43"
Uri="http://mywebservice.azurewebsites.net/mainapp.msixbundle" />
<Dependencies>
<Package
Name="Microsoft.VCLibs.140.00"
Publisher="CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US"
Version="14.0.24605.0" ProcessorArchitecture="x86" Uri="http://foobarbaz.com/fwkx86.appx" />
<Package
Name="Microsoft.VCLibs.140.00"
Publisher="CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US"
Version="14.0.24605.0"
ProcessorArchitecture="x64"
Uri="http://foobarbaz.com/fwkx64.appx" />
</Dependencies>
</AppInstaller>
Etapa 6: Adicionar configuração de atualização
O arquivo do App Installer também pode especificar a configuração de atualização para que os conjuntos relacionados possam ser atualizados automaticamente quando um arquivo mais recente do App Installer for publicado. <UpdateSettings> é um elemento opcional. Em <UpdateSettings> , a opção OnLaunch especifica que as verificações de atualização devem ser feitas na inicialização do aplicativo e HoursBetweenUpdateChecks="12" especifica que uma verificação de atualização deve ser feita a cada 12 horas. Se HoursBetweenUpdateChecks não for especificado, o intervalo padrão usado para verificar se há atualizações é de 24 horas. Tipos adicionais de atualizações, como atualizações em segundo plano, podem ser encontrados no esquema de Configurações de Atualização. Tipos adicionais de atualizações no lançamento da aplicação, como atualizações com um prompt, podem ser encontrados no esquema de OnLaunch.
| Elementos | Descrição |
|---|---|
| HorasEntreVerificaçõesDeAtualização | Define a lacuna mínima nas verificações de atualização de aplicativos do Windows. |
| AtualizarAtivaçãoDeBlocos | Define a experiência quando uma atualização de aplicativo é verificada. |
| ShowPrompt | Define se uma janela é exibida quando as atualizações estão sendo instaladas e quando as atualizações estão sendo verificadas. |
| ActualizarDeQualquerVersão | Especifica que a próxima versão do aplicativo pode ser para uma versão mais recente ou mais antiga. Se Verdadeiro, será para todos; se Falso (padrão), apenas as novas versões serão instaladas. |
<?xml version="1.0" encoding="utf-8"?>
<AppInstaller
xmlns="http://schemas.microsoft.com/appx/appinstaller/2021"
Version="1.0.0.0"
Uri="http://mywebservice.azurewebsites.net/appset.appinstaller" >
<MainBundle
Name="Contoso.MainApp"
Publisher="CN=Contoso"
Version="2.23.12.43"
Uri="http://mywebservice.azurewebsites.net/mainapp.msixbundle" />
<UpdateSettings>
<OnLaunch
HoursBetweenUpdateChecks="12"
UpdateBlocksActivation="true"
ShowPrompt="true" />
<AutomaticBackgroundTask />
<ForceUpdateFromAnyVersion>true</ForceUpdateFromAnyVersion>
</UpdateSettings>
</AppInstaller>
Etapa 7: Adicionar configurações de atualização automática
Importante
As configurações a seguir só estão disponíveis ao usar o esquema 2021 em uma compilação do Windows Insider do Windows 10.
Os aplicativos do Windows instalados com um arquivo do App Installer terão como padrão atualizar seu aplicativo do Windows a partir do URI do App Installer, aderindo às configurações definidas na etapa anterior. Os URIs de atualização configurados nesta etapa atuarão como URIs de fallback que podem ser usados se o URI original do App Installer não estiver mais acessível. Um máximo de 10 URIs de atualização pode ser configurado para qualquer aplicativo do Windows.
Os URIs de atualização devem ter como destino os arquivos do App Installer.
Observação
Essas configurações só funcionam quando o esquema é configurado como 2021 ou mais recente.
<?xml version="1.0" encoding="utf-8"?>
<AppInstaller
xmlns="http://schemas.microsoft.com/appx/appinstaller/2021"
Version="1.0.0.0"
Uri="http://mywebservice.azurewebsites.net/appset.appinstaller" >
<MainBundle
Name="Contoso.MainApp"
Publisher="CN=Contoso"
Version="2.23.12.43"
Uri="http://mywebservice.azurewebsites.net/mainapp.msixbundle" />
<UpdateSettings>
<OnLaunch
HoursBetweenUpdateChecks="12" />
</UpdateSettings>
<UpdateUris>
<UpdateUri>https://www.contoso.com/Installers/MainApp.AppInstaller</UpdateUri>
<UpdateUri>\\ServerName\Share\Installers\MainApp.AppInstaller</UpdateUri>
</UpdateUris>
</AppInstaller>
Etapa 8: Adicionar configurações de reparo automático
Importante
As configurações a seguir só estão disponíveis ao usar o esquema 2021 em uma compilação do Windows Insider do Windows 10.
Os aplicativos do Windows instalados em um dispositivo podem oferecer suporte ao reparo automático do aplicativo do Windows quando ele for adulterado. O instalador de origem que será usado para reparar o aplicativo do Windows pode ser configurado usando a <RepairURIs> propriedade. O aplicativo do Windows tentará se reparar com base no URI do App Installer, se inacessível, o aplicativo do Windows usará os URIs de reparo para identificar uma fonte de reparo. Um máximo de 10 URIs de reparo pode ser configurado para qualquer aplicativo do Windows.
Os URIs de reparo podem ter como destino os arquivos do aplicativo do Windows ou do App Installer. Essa configuração não exige que o aplicativo do Windows tenha sido instalado usando um arquivo do App Installer.
<?xml version="1.0" encoding="utf-8"?>
<AppInstaller
xmlns="http://schemas.microsoft.com/appx/appinstaller/2021"
Version="1.0.0.0"
Uri="http://mywebservice.azurewebsites.net/appset.appinstaller" >
<MainBundle
Name="Contoso.MainApp"
Publisher="CN=Contoso"
Version="2.23.12.43"
Uri="http://mywebservice.azurewebsites.net/mainapp.msixbundle" />
<UpdateSettings>
<OnLaunch
HoursBetweenUpdateChecks="12" />
</UpdateSettings>
<RepairUris>
<RepairUri></RepairUri>
<RepairUri></RepairUri>
</RepairUris>
</AppInstaller>
Para obter todos os detalhes sobre o esquema XML, consulte Referência do arquivo do App Installer.
Observação
O tipo de ficheiro do App Installer é novo no Windows 10, versão 1709 (a Atualização de Criadores de outono do Windows 10). Não há suporte para implantação de aplicativos do Windows 10 usando um arquivo do App Installer em versões anteriores do Windows 10. O elemento HoursBetweenUpdateChecks está disponível a partir do Windows 10, versão 1803.