Sysprep erro 0x80073cf2 no Windows Server 2025: como resolver falha do Microsoft.Winget.Source

Você iniciou a captura de uma imagem Windows Server 2025 (24H2 Build 26100.2314) em Audit Mode, executou o Sysprep e recebeu o temido erro 0x80073cf2 apontando para o pacote Microsoft.Winget.Source. A falha interrompe o processo de generalização e impede a criação do WIM final. Este guia detalhado explica o motivo, mostra como corrigir o problema com PowerShell e oferece práticas recomendadas para evitar que o erro volte a ocorrer.

Índice

Visão geral do erro Sysprep 0x80073cf2 no Windows Server 2025

O Sysprep precisa garantir que todos os aplicativos UWP provisionados na imagem existam em cada perfil de usuário. Quando um app é instalado ou atualizado apenas para o usuário de auditoria (Administrator), mas não está “provisionado” globalmente, ocorre um descompasso entre os perfis e o Sysprep falha. Na build 26100.2314, o componente Windows Package Manager (Microsoft.Winget.Source) costuma ser baixado silenciosamente pela Microsoft Store logo após a primeira conexão à internet, gerando a mensagem:

Package Microsoft.Winget.Source… was installed for a user, but not provisioned for all users.
SYSPRP Failed to remove apps for the current user: 0x80073cf2

Por que o Sysprep exige apps provisionados?

O objetivo do Sysprep é entregar uma imagem limpo, consistente e preparada para o OOBE. Se um pacote existe apenas em um perfil:

  • Outro usuário pode não ter as dependências exigidas pelo sistema.
  • O app pode tentar se instalar novamente no primeiro logon, atrasando o processo de instalação.
  • A remoção seletiva de apps deixa resíduos no registro e no diretório %ProgramFiles%\WindowsApps.

Para evitar essas situações, o Sysprep aborta caso encontre discrepâncias.

Diagnóstico rápido

Abra o PowerShell elevado e execute:

Get-AppxPackage -AllUsers |
  Where-Object { $_.PackageFullName -like 'Winget.Source' }

Caso o comando retorne uma linha, você confirmou que o pacote existe para o usuário mas não está provisionado globalmente. Para validar o provisionamento:

Get-AppxProvisionedPackage -Online |
  Where-Object { $_.DisplayName -like 'Winget.Source' }

Se não retornar nada, o app não foi provisionado, tornando-se o culpado do erro.

Correção passo a passo

1  Detectar o pacote problemático

No exemplo abaixo, adaptamos o comando para procurar qualquer app responsável pela falha, substituindo o curinga conforme necessário:

$Suspect = 'Winget.Source'
Get-AppxPackage -AllUsers |
  Where-Object { $_.PackageFullName -like $Suspect } |
  Select PackageFullName, InstallLocation

2  Remover o app para todos os perfis

Com o nome exato em mãos, remova o pacote de todos os usuários já existentes:

Get-AppxPackage -Name Microsoft.Winget.Source -AllUsers |
  Remove-AppxPackage -AllUsers

3  Desprovisionar o app da imagem

Agora elimine a entrada de provisionamento para que usuários futuros não recebam o app automaticamente:

Get-AppxProvisionedPackage -Online |
  Where-Object { $_.DisplayName -like 'Microsoft.Winget.Source*' } |
  Remove-AppxProvisionedPackage -Online

4  Bloquear a Microsoft Store durante o Audit Mode (opcional, mas recomendado)

Qualquer atualização posterior da Store recriará o problema. Para garantir uma imagem estável:

  • Desconecte o adaptador de rede antes de iniciar o Audit Mode ou
  • No app Store, abra Settings › App settings e desative Update apps automatically.

Se usar configuração unattended, você pode definir a política DisableStoreApps no arquivo unattend.xml ou via GPO localizada em Computer Configuration › Administrative Templates › Windows Components › Store.

5  Executar novamente o Sysprep

Com o pacote removido e a Store bloqueada, execute:

sysprep /generalize /oobe /shutdown

O utilitário deve finalizar sem erros, permitindo capturar o WIM via Dism /Capture-Image ou a ferramenta de sua preferência.

Automatizando a detecção e correção

Para equipes que gerenciam múltiplas linhas de produção, uma abordagem programática economiza tempo. O script abaixo procura todos os pacotes instalados que não aparecem na lista de provisionados e remove ambos:

# Detectar pacotes desprovisionados
$Installed = Get-AppxPackage -AllUsers
$Provisioned = Get-AppxProvisionedPackage -Online
$Mismatch = $Installed |
    Where-Object { $prov = $Provisioned | ? { $.PackageName -eq $.Name }
                   -not $prov }

foreach (\$pkg in \$Mismatch) {
Write-Host "Removendo \$(\$pkg.Name)..."
Remove-AppxPackage -Package \$pkg.PackageFullName -AllUsers -ErrorAction SilentlyContinue
Remove-AppxProvisionedPackage -Online -PackageName \$pkg.Name -ErrorAction SilentlyContinue
}

Inclua esse script antes de chamar o Sysprep em seu processo de build automatizado (Task Sequence, Packer, DevOps Pipeline etc.).

Tabela de códigos de erro Sysprep relacionados a UWP

CódigoMensagem típicaCausa principalSolução resumida
0x80073cf2Failed to remove apps for the current userApp instalado para usuário, não provisionadoRemover app + provisionamento
0x0f0070Failed to remove the staged packagePacote removido manualmente da pasta WindowsAppsReinstalar e remover por PowerShell
0x80073cfbPackage failed because either resources or manifest are invalidAtualização incompleta de app UWPReparar com DISM e remover app
0x80073cfaPackage or dependency missingDependência UWP ausenteInstalar dependência ou remover app

Perguntas frequentes

Posso simplesmente desabilitar a Microsoft Store? Sim. Definir a política DisableStoreApps impede atualizações de UWP e garante consistência, mas alguns componentes de sistema (por exemplo Web Experience Pack) também deixam de receber correções. O problema ocorre apenas com Microsoft.Winget.Source? Não. Qualquer aplicativo UWP — Outlook (Mail), Clipchamp, BingSearch, Teams (Preview) e outros — pode acionar o erro se for atualizado durante o Audit Mode. Funciona no Windows 11 24H2? Sim. A mesma estratégia de remoção e desprovisionamento vale para Windows 11 24H2, que compartilha a base de pacotes da plataforma WCO. Sysprep não é mais necessário com cloud‑managed devices? Embora o Autopilot simplifique implantações, muitos datacenters ainda necessitam de imagens personalizadas para cumprir requisitos de compliance, hardening ou apps legados. Portanto, Sysprep permanece relevante.

Considerações específicas para Windows Server 2025

O Windows Server tradicionalmente não inclui a Microsoft Store, mas a edição 24H2 traz componentes Inbox Apps de gerenciamento moderno (Clipchamp, Telephone, Photos). Mesmo sem UI gráfica, serviços em segundo plano podem baixar atualizações. Recomenda‑se:

  • Aplicar a política Turn off Automatic Download and Install of updates no WSUS ou Intune.
  • Criar um arquivo setupcomplete.cmd que execute o script de limpeza de UWP antes de desligar o servidor base.
  • Validar a imagem com DISM /Online /Cleanup‑Image /AnalyzeComponentStore para detectar pacotes pendentes.

Boas práticas para evitar futuras falhas do Sysprep

  1. Mantenha o ambiente offline durante todo o Audit Mode ou use proxy/firewall para bloquear storeedgefd.dsx.mp.microsoft.com e domínios de conteúdo.
  2. Execute validação automática com o script acima sempre que abrir a imagem para manutenção.
  3. Documente alterações no repositório de configurações para rastrear inclusões de UWP.
  4. Atualize a imagem‑mestre regularmente, reduzindo a janela de tempo em que apps podem ficar desatualizados e gerar conflitos.

Conclusão

O erro 0x80073cf2 durante o Sysprep no Windows Server 2025 (24H2) é causado, na maioria das vezes, por apps UWP que foram instalados ou atualizados apenas para o usuário de auditoria. Identificar o pacote, removê‑lo de todos os perfis e desprovisioná‑lo elimina o bloqueio e permite concluir a generalização. Ao adotar controles de atualização da Store, scripts de limpeza e validação contínua, você garante imagens estáveis e prontas para implantação em larga escala, sem surpresas em ambientes críticos.

Índice