ID do artigo: 296861 - Última revisão: terça-feira, 14 de setembro de 2010 - Revisão: 16.0

Como instalar múltiplas atualizações ou hotfixes do Windows com apenas uma reinicialização

Dica do SistemaEste artigo aplica-se a um sistema operativo diferente do que está a utilizar. Foi desactivado o conteúdo do artigo, que pode não ser relevante para si.

Nesta página

Expandir tudo | Recolher tudo

Sumário

Este artigo descreve como instalar múltiplas atualizações de produto do Windows (por exemplo, atualizações críticas, patches de segurança ou hotfixes) que usam o Hotfix.exe (Microsoft Windows NT 4.0) ou o Update.exe (Microsoft Windows 2000, Microsoft Windows XP ou Microsoft Windows Server 2003) com apenas um reinício. Este artigo destina-se a administradores e profissionais de TI. É possível instalar as atualizações de produtos do Windows que usam o Hotfix.exe ou o Update.exe de forma isolada ou em combinação com o Windows (com ou sem um service pack).

Observação O procedimento descrito neste artigo não funciona para as atualizações de produtos que não usam o Hotfix.exe ou o Update.exe, como o programa de instalação. Por exemplo, as atualizações do Internet Explorer para o Windows NT 4.0, o Windows 2000 e o Windows XP usam uma instalação com base em INF em vez do Update.exe. Por isso, não é possível usar este procedimento para instalar as atualizações múltiplas do Microsoft Internet Explorer com apenas um reinício no Windows NT 4.0, no Windows 2000 ou no Windows XP. Como as atualizações do Internet Explorer para o Windows Server 2003 usam o Update.exe como o programa de instalação, é possível usar este procedimento para instalá-las.

Para obter informações adicionais sobre esses tópicos, consulte os seguintes sites da Microsoft:

Windows 2000
Guia de instalação e implantação do hotfix do Microsoft Windows 2000 (em inglês)
http://www.microsoft.com/windows2000/downloads/servicepacks/sp4/HFDeploy.htm (http://www.microsoft.com/windows2000/downloads/servicepacks/sp4/HFDeploy.htm)
Windows XP
Guia de instalação e implantação do hotfix do Microsoft Windows XP (em inglês)
http://www.microsoft.com/windowsxp/downloads/updates/sp1/hfdeploy.mspx (http://www.microsoft.com/windowsxp/downloads/updates/sp1/hfdeploy.mspx)
O guia para instalação de implantação e atualizações para Microsoft Windows XP Service Pack 2 (SP2)
http://www.microsoft.com/technet/prodtechnol/winxppro/pt-br/deploy/hfdeploy.mspx (http://www.microsoft.com/technet/prodtechnol/winxppro/pt-br/deploy/hfdeploy.mspx)
Windows Server 2003 e Windows XP Professional x64 Edition
O guia para instalação e implantação de atualizações para o Microsoft Windows Server 2003 e para o Windows XP 64-Bit Edition versão 2003 (em inglês)
http://www.microsoft.com/technet/security/topics/patchmanagement/hfdeploy.mspx (http://www.microsoft.com/technet/security/topics/patchmanagement/hfdeploy.mspx)
Windows Server 2003 Service Pack 1 (SP1)
Instalando e implantando as atualizações do Microsoft Windows Server 2003 Service Pack 1 (SP1) (em inglês)
http://technet2.microsoft.com/windowsserver/en/library/0e02a953-aca7-4dad-b3e2-c94ea72bbc3d1033.mspx (http://technet2.microsoft.com/windowsserver/en/library/0e02a953-aca7-4dad-b3e2-c94ea72bbc3d1033.mspx)

Mais Informações

Uma atualização de produto do Windows (por exemplo, uma atualização crítica, um patch de segurança ou um hotfix) é um arquivo executável (.exe) que contém um ou mais arquivos de sistema que podem ser aplicados ao Windows para corrigir um problema específico. O Atendimento Microsoft distribui hotfixes para os clientes seriamente afetados por um problema específico. Atualizações críticas e patches de segurança são atualizações recomendadas pela Microsoft a todos os clientes. É possível obter as atualizações críticas e os patches de segurança pelo site do Windows Update, do Microsoft Update, do Centro de Download da Microsoft ou a de outros sites da Microsoft.

Atualizações do Windows XP x64 Edition e do Windows Server 2003 ou atualizações do Windows XP e o Windows 2000 criadas após dezembro de 2002

Observação Para determinar quando uma atualização foi criada, exiba a data de Modificação no programa de instalação Update.exe ou Hotfix.exe no pacote de atualização.

Para instalar uma atualização de produto do Windows em um único computador, execute o programa de atualização do produto no computador que deseja atualizar. Para instalar múltiplas atualizações de produto sem reiniciar o computador entre cada instalação, use a opção /z.

Opções de linha de comando para o programa Update.exe

A seguinte tabela identifica as opções de linha de comando que recebem suporte do programa Update.exe:
Descrição da opção ------ ----------- /f Força outros programas a fechar durante o desligamento. /n Não cria arquivos de backup para a remoção dos hotfixes. /z Não reinicia o computador após a instalação ter sido concluída. /q Usa o modo silencioso; não exige interação com o usuário. /m Usa o modo de Instalação autônomo (Windows 2000). /u Usa o modo de Instalação autônomo (Windows XP). /l Lista os hotfixes instalados. 
O seguinte código de amostra é um arquivo em lote que instala múltiplas atualizações de produtos e assegura que os arquivos corretos sejam substituídos após a reinício do computador.
@echo off setlocal set PATHTOFIXES=E:\hotfix  %PATHTOFIXES%\Q123456_w2k_sp4_x86.exe /Z /M %PATHTOFIXES%\Q123321_w2k_sp4_x86.exe /Z /M %PATHTOFIXES%\Q123789_w2k_sp4_x86.exe /Z /M
Observação A funcionalidade QChain.exe é incluída em todas as atualizações de produtos do Windows XP x64 Editions, do Windows Server 2003, do Windows XP e do Windows 2000 que usam o Update.exe e que foram lançadas desde 18 de maio de 2001. No entanto, existe um problema nas atualizações de produtos lançadas antes de dezembro de 2002 que pode aplicar o binário incorreto no computador em algumas circunstâncias. Em março de 2003, a Microsoft lançou uma versão atualizada do QChain.exe para resolver este problema. Para obter informações adicionais sobre esse problema ou para obter a ferramenta Qchain.exe atualizada, clique no número abaixo para ler o artigo na Base de Dados de Conhecimento Microsoft (a página pode estar em inglês):
815062  (http://support.microsoft.com/kb/815062/ ) O arquivo correto não é instalado ao encadear vários hotfixes

Todas as atualizações do Windows NT 4.0 ou do Windows XP e do Windows 2000 criadas antes de dezembro de 2002

Observação Para determinar quando uma atualização de produto foi criada, verifique a data de Modificação no programa de instalação Update.exe ou Hotfix.exe no pacote de atualização.

A Microsoft lançou uma ferramenta da linha de comando chamada QChain.exe. Com a QChain.exe, administradores de sistema podem encadear as atualizações. Ao encadear as atualizações, você instala atualizações múltiplas sem reiniciar o computador entre cada instalação. Sem esta ferramenta, o único método que recebe suporte é reiniciar o computador após a instalação de cada atualização. A ferramenta QChain.exe tem os seguintes benefícios:
  • Aumenta o tempo de funcionamento dos servidores, porque os computadores não são reiniciados entre a instalação de cada atualização.
  • Permite instalações mais rápidas de atualizações múltiplas em um único computador.
  • Funciona no Windows 2000 e no Windows NT 4.0.
Observação A funcionalidade QChain.exe está incluída em todas as atualizações do Windows XP e do Windows 2000 lançadas desde 18 de maio de 2001, mas existe um problema nas atualizações lançadas antes de dezembro de 2002 que pode, em algumas circunstâncias, resultar no uso do binário incorreto no computador. Em março de 2003, a Microsoft lançou uma versão atualizada do QChain.exe para resolver este problema. Para obter mais informações sobre esse problema ou para obter a ferramenta Qchain.exe atualizada, clique no número abaixo para ler o artigo na Base de Dados de Conhecimento Microsoft (a página pode estar em inglês):
815062  (http://support.microsoft.com/kb/815062/ ) O arquivo correto não é instalado ao encadear vários hotfixes

Encadear instalações de atualizações sem o QChain.exe não é seguro

Ao instalar as atualizações, um arquivo não poderá ser substituído se ele estiver bloqueado ou estiver em uso. Como resultado, o arquivo será colocado na fila Pending File Rename e será substituído após o reinício do computador. O problema ocorre nas seguintes situações:
  • Você instala as atualizações A e B sem reiniciar o computador entre cada instalação.
  • Ambos os pacotes contêm um arquivo X. O arquivo X do pacote A é a versão 3; o arquivo X do pacote B é a versão 2. A versão do arquivo X no computador é a 1.
  • Quando o pacote A for instalado, ele coloca essa versão do arquivo X na fila Pending File Rename.
  • Quando o pacote B for instalado, ele coloca essa versão do arquivo X na fila Pending File Rename.
  • Quando o computador for reiniciado, como o pacote B foi instalado por último, instala-se a sua versão do arquivo X (na fila Pending File Rename, é usado o último arquivo). Como resultado, a versão 2 é instalada em vez da versão 3, como era esperado.

Se as atualizações encadeadas anteriormente forem instaladas sem reinicialização

Apesar dessa situação ser rara, é bom verificar se o computador tem todas as correções que acredita estarem instaladas. Para verificar isso, use a ferramenta Qfecheck.exe. Para obter mais informações sobre a ferramenta Qfecheck.exe, clique no número abaixo para ler o artigo na Base de Dados de Conhecimento Microsoft (a página pode estar em inglês):
282784  (http://support.microsoft.com/kb/282784/ ) O arquivo Qfecheck.exe verifica a instalação dos hotfixes do Windows 2000 e do Windows XP
A QChain.exe limpa a chave Pending File Rename Operations no Registro para garantir que haja apenas a versão mais recente de um arquivo instalada após o computador ser reiniciado.

Para instalar as atualizações múltiplas com apenas um reinício

  1. Execute o instalador da atualização com a opção -z para instruí-lo a não reiniciar após a instalação. Adicione a opção -m (para o modo silencioso), caso você não queira que avisos ou mensagens apareçam durante a instalação.

    O instalador da atualização é um dos seguintes programas:
    • O arquivo de programa do pacote compactado auto-extraível (por exemplo, Qnnnnnn_w2k_spx_x86_en.exe).
    • Hotfix.exe (se você extraiu todos os arquivos do pacote).
  2. Após instalar todos os hotfixes, execute QChain.exe.
  3. Reinicie o computador.
Também é possível criar um arquivo em lote para fazer isso. O arquivo em lote de exemplo a seguir demonstra este método:
@echo off setlocal set PATHTOFIXES=some path %PATHTOFIXES%\Q123456_w2k_sp2_x86.exe -z -m %PATHTOFIXES%\Q123321_w2k_sp2_x86.exe -z -m %PATHTOFIXES%\Q123789_w2k_sp2_x86.exe -z -m %PATHTOFIXES%\qchain.exe 

Como obter QChain.exe

A funcionalidade QChain.exe está incluída em todas as atualizações do Windows XP e do Windows 2000 lançadas desde 18 de maio de 2001, mas existe um problema nas atualizações lançadas antes de dezembro de 2002 que pode, em algumas circunstâncias, resultar no uso do binário incorreto no computador. Em março de 2003, a Microsoft lançou uma versão atualizada do QChain.exe para resolver este problema. Para obter mais informações sobre esse problema ou para obter a ferramenta Qchain.exe atualizada, clique no número abaixo para ler o artigo na Base de Dados de Conhecimento Microsoft (a página pode estar em inglês):
815062  (http://support.microsoft.com/kb/815062/ ) O arquivo correto não é instalado ao encadear vários hotfixes

A sintaxe de comando do QChain.exe

qchain [logfilename]
O parâmetro opcional [logfilename] cria um arquivo com uma tela de antes e depois da chave Pending File Rename Operations.

Exemplo de saída do QChain.exe

---- Informações antigas no Registro ------
Origem:C:\WINNT\inf\acpi.inf
Versão: 5.0.2183.1
Destino:d:\ntsust\testregchech\1394.inf
Versão: 5.0.2183.1

Origem:C:\WINNT\inf\adm_mult.inf
Versão: 5.0.2184.1
Destino:d:\ntsust\testregchech\1394.inf
Versão: 5.0.2183.1

Origem:C:\WINNT\inf\banshee.inf
Versão: 5.0.2080.1
Destino:d:\ntsust\testregchech\1394.inf
Versão: 5.0.2183.1

---- Novas informações no Registro ------
Origem:C:\WINNT\inf\adm_mult.inf
Versão: 5.0.2184.1
Destino:d:\ntsust\testregchech\1394.inf
Versão: 5.0.2183.1

Limitações do QChain.exe

Embora o QChain funcione com a maioria das atualizações do Windows NT 4.0 e do Windows 2000, ele pode não funcionar com as atualizações que contêm os arquivos binários listados na seguinte chave do Registro:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\KnownDLLs
Os arquivos binários (binários) listados nessa chave do Registro são carregados na memória durante a inicialização. Quando o instalador da atualização chama a função GetFileVersionInfo em um binário dessa lista, ele se refere ao binário que já está carregado em vez do binário realmente está presente no local de destino.

Como os binários listados na chave do Registro
KnownDLLs
carregam na memória durante a inicialização, o instalador da atualização deve substituir o binário de destino pelo binário corrigido antes do reinício do computador. Por isso, o instalador da atualização não cria uma Pending File Rename Operation para substituir o binário durante o reinício. Em vez disso, a atualização move o binário atual para um local temporário, coloca o binário corrigido no local em que estava o binário atual e cria uma Pending File Rename Operation para excluir o binário atual quando o computador for reiniciado.

O QChain afeta apenas a Pending File Rename Operations que executam as operações de substituição dos binários. Ele não faz nada com a Pending File Rename Operations que realiza as operações de exclusão.

Todas as atualizações do Windows NT 4.0 e do Windows 2000 anteriores ao SP2 usam GetFileVersionInfo para identificar a versão de um arquivo. Se você instalar duas ou mais atualizações do Windows NT 4.0 ou atualizações anteriores ao SP2 do Windows 2000 e elas contiverem KnownDLLs sobrepostas, o uso do QChain para encadear a instalação dessas atualizações não poderá assegurar que a versão mais recente da correção seja instalada.

As seguintes situações mostram porque o QChain pode não colocar o binário correto no sistema:
  • Você instala pacotes de atualização A e B e não reinicia entre as instalações.
  • Ambos os pacotes contêm Kernel32.dll, um arquivo na lista KnownDLLs. O pacote A inclui a versão 3 de Kernel32.dll, o pacote B inclui a versão 2 de Kernel32.dll e o computador tem a versão 1 de Kernel32.dll instaladas.
  • Quando o pacote A é instalado, GetFileVersionInfo relata que o computador tem a versão 1 de Kernel32.dll. Como o pacote A inclui a versão 3, o instalador da atualização identifica a necessidade de substituição do arquivo.
    • O instalador da atualização move a versão 1 de Kernel32.dll no computador para um local temporário e cria uma Pending File Rename Operation para excluir o arquivo Kernel32.dll do local temporário da próxima vez que o computador reiniciar.
    • A versão 3 de Kernel32.dll do pacote A é copiada para o computador.
  • Quando o pacote B é instalado, GetFileVersionInfo continua relatando que a versão 1 de Kernel32.dll está instalada no computador, porque GetFileVersionInfo lê as informações de versão pelo Kernel32.dll carregado na memória. O pacote B tem a versão 2 e o hotfix identifica a necessidade de substituição do arquivo.
    • O instalador da atualização move o Kernel32.dll, que agora está no computador (a versão 3 de Kernel32.dll do pacote A), para um local temporário e cria uma Pending File Rename Operation para excluir o Kernel32.dll (versão 3) do local temporário na próxima vez em que o computador for reiniciado.
    • A versão 2 de Kernel32.dll do pacote B é copiada para o computador.
  • O QChain é executado, mas como não há Pending File Rename Operations para a substituição do arquivo, ele não realiza nenhuma operação.
  • Como o pacote B foi instalado por último, a versão 2 do Kernel32.dll do pacote B está no local correto no computador. Por isso, ele carrega na memória quando o computador reinicia. A Pending File Rename Operations exclui tanto a versão 1 do Kernel32.dll original quanto a versão 3 de Kernel32.dll do pacote A. Como resultado, o computador agora tem a versão 2 de Kernel32.dll em vez da versão 3.
Há uma correção posterior ao SP2 do Windows 2000 na qual GetFileVersionInfo não é mais usado nas KnownDLLs carregadas na memória. Em vez disso, o instalador da atualização mapeia o arquivo que está presente no local de destino e chama GetFileVersionInfo no arquivo mapeado. Por isso, é possível usar o QChain.exe para encadear atualizações posteriores ao SP2 do Windows 2000. Ao fazer isso, a versão mais recente de um arquivo é instalada, independentemente da ordem de instalação das atualizações.

Se você re-executar a situação anterior e usar as atualizações posterior ao SP2 do Windows 2000, o hotfix no pacote B mapeará o Kernel32.dll do pacote A e reconhecerá a versão 3. A versão 3 é posterior à versão 2 de Kernel32.dll do próprio pacote B. Por isso, o pacote B não substitui o Kernel32.dll que se encontra no sistema e a versão 3 de Kernel32.dll do pacote A é a versão correta a ser usada depois que o computador for reiniciado.

A informação contida neste artigo aplica-se a:
  • Microsoft Windows Update
  • Microsoft Update
Palavras-chave: 
kbproductlink kbhotfixserver kbqfe kbwindowsupdatev6 kbwindowsupdatev3 kbfile kbgraphxlinkcritical kbinfo KB296861