Solução de problemas de implantação do MSIX

Este artigo ajuda você a diagnosticar e resolver falhas de instalação e implantação do MSIX. Ele aborda códigos de erro comuns, como ler logs de implantação e correções para os problemas relatados com mais frequência.

Observação

As referências neste .msix artigo se aplicam igualmente a .msixbundle, .appx, .appxbundlee suas variantes criptografadas (.emsixe .eappxassim por diante), a menos que observado o contrário.

Etapa 1: Ler os logs de implantação

Quando uma instalação MSIX falha, o código de erro mostrado na interface do usuário geralmente é um resumo de alto nível. Os logs do Visualizador de Eventos e do PowerShell contêm a causa subjacente.

Visualizador de Eventos

Abra Visualizador de Eventos e navegue até: Applications and Services Logs > Microsoft > Windows > AppxDeployment-Server

Procure eventos com um nível de Crítico, Erro ou Aviso que corresponda à hora da instalação com falha. O painel de detalhes geralmente contém um código de erro e uma descrição mais específicos do que o mostrado ao usuário.

PowerShell

Get-AppxLog | Where-Object {$_.EventId -eq 404} | Select-Object -Last 20

Ou para uma exibição interativa e filtrada:

Get-AppxLog | Out-GridView

Etapa 2: Verificar códigos de erro comuns

A tabela a seguir aborda os códigos de erro relatados com mais frequência pelos desenvolvedores. Se o seu código não estiver listado, consulte Solução de problemas de empacotamento, implantação e consultas de aplicativos Windows para obter uma referência completa.

Código do erro Nome Causa comum Corrigir
0x80073CF0 ERROR_INSTALL_OPEN_PACKAGE_FAILED O arquivo de pacote não pode ser aberto – arquivo ausente, caminho errado ou problema de permissões Verifique se o .msix arquivo existe no caminho especificado. Se estiver instalando por meio do PowerShell, use um caminho local, não um caminho de compartilhamento UNC/rede. Execute o PowerShell com privilégios de administrador.
0x80073CF3 ERROR_INSTALL_PACKAGE_DOWNGRADE Uma versão mais recente do pacote já está instalada Desinstale a versão existente primeiro ou altere o número de versão no manifesto do pacote para um valor mais alto.
0x80073CF6 ERROR_INSTALL_REGISTRATION_FAILURE Falha no registro do pacote – geralmente um banco de dados de registro de pacote corrompido ou um arquivo do sistema Execute wsreset -i para redefinir o cache de Microsoft Store. Se o problema persistir, execute sfc /scannow para reparar arquivos do sistema ou experimente Configurações Aplicativos > instalados > [Nome do aplicativo] > Reparo de opções avançadas>. Verifique Visualizador de Eventos para obter um erro interno mais específico.
0x80073CF9 ERROR_INSTALL_PACKAGE_NOT_FOUND O pacote ou um pacote de dependência não pôde ser encontrado durante a instalação Verifique se todos os pacotes de dependência (VCLibs, .NET, runtime do WinAppSDK) estão instalados antes do pacote principal. Você pode instalá-los no mesmo comando: Add-AppxPackage main.msix -DependencyPath dep1.msix, dep2.msix
0x80073CFA ERROR_REMOVE_FAILED Falha na operação de desinstalação/remoção – o aplicativo pode estar em execução, seu estado pode estar corrompido ou é um aplicativo de caixa de entrada protegido Feche todas as instâncias do aplicativo e tente novamente. Para um estado corrompido, tente utilizar um ambiente de Inicialização Limpa. Os aplicativos de sistema/caixa de entrada não podem ser removidos por meio de Remove-AppxPackage.
0x80073CFB ERROR_PACKAGE_ALREADY_EXISTS Pacote idêntico já registrado para este usuário Desinstale o pacote existente primeiro: Get-AppxPackage <PackageName> | Remove-AppxPackage
0x80073D02 ERROR_PACKAGES_IN_USE No momento, o pacote está em uso por um processo em execução Feche todas as instâncias em execução do aplicativo antes de atualizar ou desinstalar. Use o Gerenciador de Tarefas ou Get-Process para confirmar.
0x8007000D ERROR_INVALID_DATA O pacote está corrompido, mal formatado ou o publicador no manifesto não corresponde ao certificado de assinatura Verifique se o campo Publisher em AppxManifest.xml (ou Package.appxmanifest em Visual Studio) corresponde exatamente ao Subject do certificado de assinatura (incluindo espaçamento e capitalização). Recompile e assine novamente o pacote.
0x8BAD0042 CertNotTrusted O certificado de assinatura não é confiável pelo dispositivo (geralmente visto ao usar o MSIX Core em Windows de nível inferior) Importe o certificado de autenticação para o repositório de Pessoas Confiáveis do Computador > Local (não o repositório de usuários atual) no dispositivo de destino ou use um certificado emitido por uma AC confiável. Consulte certificados confiáveis.
0x80070005 E_ACCESSDENIED Permissões insuficientes Execute o comando de instalação ou o script com privilégios de administrador (por exemplo, em um prompt de comando aberto com Executar como administrador).
0x80070002 ERROR_FILE_NOT_FOUND Um arquivo referenciado no manifesto não existe no pacote Verifique se há ativos ou recursos ausentes referenciados em AppxManifest.xml. Recompile o pacote e verifique seu conteúdo com MakeAppx unpack.

Dica

Instalando de um compartilhamento de rede? Uma causa comum de erros enganosos (especialmente 0x80073CF0 e 0x80070002) ocorre ao executar Add-AppxPackage em um caminho UNC (\\server\share\app.msix). Copie o .msix arquivo para uma pasta local primeiro e instale-o.

Etapa 3: Verificar os pré-requisitos

Muitas falhas de instalação são causadas por pré-requisitos não atendidos, em vez de um problema com o próprio pacote.

Confiança do certificado – O certificado de assinatura do pacote deve estar no repositório Pessoas Confiáveis do Computador > Local , não no repositório de certificados do usuário atual.

Sideloading — Em as versões do Windows 10 antes de 1809 (RS5), o sideloading exigia uma definição de política separada. Do RS5 em diante, o padrão permite instalações de pacote de aplicativos confiáveis; em Windows 11, nenhuma configuração adicional é necessária. Consulte Habilitar seu dispositivo para desenvolvimento para os requisitos atuais.

Dependencies — Apps do SDK do Aplicativo Windows exigem que o SDK do Aplicativo Windows runtime seja instalado no dispositivo de destino, a menos que você esteja usando implantação auto-contida. Use o parâmetro -DependencyPath com Add-AppxPackage para instalar os pacotes de dependência juntamente com o pacote principal.

Aplicativo Instalador de Aplicativo — Se clicar duas vezes em um .msix arquivo não fizer nada, o aplicativo Instalador de Aplicativo poderá estar ausente. Instale-o do Microsoft Store.

Etapa 4: Validar o manifesto do pacote

Erros de manifesto são uma fonte comum de falhas de instalação. Use MakeAppx para verificar a estrutura do pacote e verificar o manifesto:

# Unpack the package and inspect the manifest
MakeAppx unpack /p "C:\path\to\app.msix" /d "C:\unpack-output"

Verifique AppxManifest.xml na pasta de saída para:

  • Validade XML (sem marcas malformadas ou elementos de fechamento ausentes)
  • Publisher campo que corresponde exatamente ao Subject do seu certificado de assinatura
  • Nomes de funcionalidade usando o namespace correto para sua versão do sistema operacional de destino
  • restrições para extensões somente do Windows 11 MinOSVersion

Consulte a referência de esquema do manifesto do pacote de aplicativos para atributos e namespaces com suporte.

Códigos de erro DEP comuns

O Visual Studio e o MSBuild exibem erros de implantação com um prefixo DEP. As mais comuns:

Code Meaning Corrigir
DEP0700 Falha no registro do pacote Normalmente, um erro de esquema de manifesto – verifique se há XML inválido, declarações xmlns não suportadas ou nomes de capacidades que não correspondem à lista permitida.
DEP3300 Dependência não encontrada Instale o pacote de estrutura necessário (VCLibs, .NET, WinAppSDK) antes da implantação.
DEP3301 Pacote já registrado com arquitetura diferente Desinstale a arquitetura conflitante antes de implantar uma compilação de arquitetura diferente.

Recursos adicionais

Tem dúvidas? Pergunte GitHub Copilot ou pesquise Stack Overflow usando a marca msix.