Atualizando Windows Update Agent
Windows Update Agent (WUA) se atualiza por vários meios, dependendo da versão do Windows em execução no dispositivo. Versões antigas do WUA podem não ser capazes de se conectar aos serviços de atualização atuais, podem não ser compatíveis com todas as atualizações e podem não dar suporte a todas as APIs documentadas. Veja como garantir que o WUA seja totalmente atualizado e compatível.
Em versões do Windows começando com Windows 7 e Windows Server 2008 R2
As atualizações do AGENTE Windows Update (WUA) são incluídas nas atualizações periódicas regulares para Windows distribuídas por meio de Windows Update ou para Windows Server Update Services (WSUS). Você não precisa executar nenhuma etapa especial para atualizar o WUA nessas versões Windows.
Em versões do Windows anteriores ao Windows 7 e Windows Server 2008 R2
O WUA se atualiza automaticamente quando as Atualizações Automáticas se conectam a Windows Update ou ao WSUS.
Se as Atualizações Automáticas ainda não tiverem sido executadas com êxito, é possível que um dispositivo executando essas versões Windows esteja executando uma versão mais antiga do WUA que não dê suporte a todas as APIs documentadas. Se você receber um resultado WU_E_SELFUPDATE_REQUIRED ao usar a API WUA para executar uma verificação, download ou instalação, esse erro informará que a versão instalada do WUA é muito antiga para se conectar aos serviços atuais do Windows Update. Você não pode usar as APIs WUA normais para atualizar o WUA nesses sistemas operacionais.
Um usuário pode atualizar manualmente o WUA para uma versão atual abrindo o painel de controle Windows Update, selecionando Verificar Atualizações e, em seguida, aceitando a auto-atualização exibida. Como alternativa, você pode atualizar o WUA programaticamente.
Para atualizar programaticamente o WUA em versões de Windows antes do Windows 7 e Windows Server 2008 R2
- Use as APIs WinHTTP para baixar Wuredist.cab.
- Use as Funções de Criptografia para verificar se a cópia baixada do Wuredist.cab tem uma assinatura digital da Microsoft. Se você não puder verificar a assinatura digital, pare.
- Use as APIs da Interface de Descompressão de Arquivo para extrair o arquivo XML do Wuredist.cab.
- Use as APIs Microsoft XML Core Services (MSXML) para carregar o arquivo XML e localizar o nó WURedist/StandaloneRedist/architecture para a arquitetura do computador. Por exemplo, para x86, localize o nó WURedist/StandaloneRedist/architecture com o atributo de nome de x86.
- Chame IWindowsUpdateAgentInfo::GetInfo para determinar a versão atual do WUA. Se IWindowsUpdateAgentInfo::GetInfo retornar um número de versão que seja pelo menos tão alto quanto o atributo clientVersion no nó de arquitetura localizado, pare.
- Use as APIs MSXML para ler o atributo downloadUrl do nó de arquitetura localizado. downloadUrl fornece a URL de download para o instalador WUA apropriado para a arquitetura do computador.
- Use as APIs WinHTTP para baixar o instalador apropriado.
- Use a função CreateProcess ou uma API semelhante para executar o instalador baixado.