O Gerenciador de Pacotes só pode instalar o primeiro pacote quando você extrai dois ou mais pacotes para a mesma pasta no Windows Vista

Este artigo descreve um problema que ocorre porque o Gerenciador de Pacotes não pode gerenciar dois ou mais pacotes na mesma área restrita.

Aplica-se a: Windows 10 — todas as edições, Windows Server 2012 R2
Número de KB original: 932224

Sintomas

No Windows Vista, a ferramenta Gerenciador de Pacotes só pode instalar o primeiro pacote quando você extrai dois ou mais pacotes para a mesma pasta.

Por exemplo, considere o seguinte cenário:

  • Em um computador que está executando o Windows Vista, você cria uma pasta C:\Temp.

  • Baixe os seguintes pacotes de hotfix para esta pasta:

    • Windows6.0-KB929761-x86.msu

    • Windows6.0-KB932590-x86.msu

      Esses pacotes de hotfix são para hotfix 929761 e hotfix 932590.

  • Execute os seguintes comandos para expandir os pacotes de hotfix:

    c:\temp>expand c:\temp\Windows6.0-KB929761-x86.msu -F:Windows6.0-KB929761-x86.cab c:\temp
    
    c:\temp>expand c:\temp\Windows6.0-KB932590-x86.msu -F:Windows6.0-KB932590-x86.cab c:\temp
    
  • Execute os seguintes comandos para instalar os pacotes:

    start /w Pkgmgr /ip /m:c:\temp\Windows6.0-KB929761-x86.cab
    
    start /w Pkgmgr /ip /m:c:\temp\Windows6.0-KB932590-x86.cab
    

Nesse cenário, o Gerenciador de Pacotes instala apenas o pacote para hotfix 929761.

Quando esse problema ocorre, as informações que se assemelham ao seguinte podem aparecer no arquivo Cbs.log:

Neste exemplo Cbs.log arquivo, o Gerenciador de Pacotes indica que instalará o arquivo .cab para hotfix 932590. No entanto, ele realmente instala o pacote Package_1_for_KB929761~31bf3856ad364e35~x86~6.0.1.1. Este é o pacote de 929761 de hotfix.

Observação

Esse problema também se aplica ao Windows Server 2008.

Motivo

Esse problema ocorre porque o Gerenciador de Pacotes não pode gerenciar dois ou mais pacotes na mesma área restrita.

Resolução

Para contornar esse problema, execute um dos métodos a seguir.

Método 1:

Expanda cada pacote para uma pasta diferente antes de instalá-los com pkgmgr. Para fazer isso, digite os seguintes comandos em um prompt de comando:

Delete update*.*

Mkdir c:\temp\sandbox1

Mkdir c:\temp\sandbox2

Start /w pkgmgr /ip /m:c:\temp\ CabFile /s:c:\temp\sandbox1

Start /w pkgmgr /ip /m:c:\temp\ CabFile /s:c:\temp\sandbox2

Nesses comandos, CabFile representa o arquivo .cab para o pacote hotfix.

Método 2:

Outra solução alternativa é usar o DISM para atender imagens offline do Windows Vista SP1 e windows Server 2008.

Considerações sobre como usar o DISM com o Windows Server 2008/Vista SP1 Imagens:

  • A imagem do Windows que você está atualizando deve ser o Windows Vista com SP1 ou Windows Server 2008 ou posterior.
  • Se você estiver atendendo uma imagem do Windows Vista com SP1 ou Windows Server 2008, o DISM traduzirá o comando DISM para o comando equivalente do Package Manager para que a imagem possa ser atualizada. O DISM fornece paridade funcional ao Gerenciador de Pacotes.
  • Há suporte apenas para cenários offline
  • O DISM está pré-instalado com o Windows 7 e o Windows Server 2008 R2 e está incluído no Kit de Instalação Automatizada do Windows para Windows 7. O Kit de Instalação Automatizada do Windows pode ser instalado no Windows Vista e no Windows 2008.

Editor observação: link de download para Win7 waik: O AIK (Kit de Instalação Automatizada do Windows) para Windows 7

Adicionar os pacotes a uma imagem offline usando DISM

  1. Em um prompt de comando elevado, navegue até a pasta de manutenção OPK e digite o comando a seguir para recuperar o nome ou o número de índice da imagem que você deseja modificar.

    Dism /Get-WIMInfo /WimFile:C:\test\images\install.wim
    

    Observação

    Um valor de índice ou nome é necessário para a maioria das operações que especificam um arquivo WIM (imagem do Windows).

  2. Digite o comando a seguir para montar a imagem offline do Windows.

    Dism /Mount-WIM /WimFile:C:\test\images\install.wim /Name:"Windows 7 HomeBasic" /MountDir:C:\test\offline
    
  3. Em um prompt de comando, digite o comando a seguir para adicionar um pacote específico à imagem. Você pode adicionar vários pacotes em uma linha de comando. Os pacotes serão instalados na ordem listada na linha de comando.

    Dism /Image:C:\test\offline /Add-Package /PackagePath:C:\packages\package1.cab /PackagePath:C:\packages\package2.cab
    

    Observação

    .cab é extraído do arquivo .msu.

  4. Em um prompt de comando, digite o comando a seguir para confirmar as alterações e desmontar a imagem.

    Dism /Unmount-WIM /MountDir:C:\test\offline /Commit
    

Status

A Microsoft confirmou que este é um problema nos produtos Microsoft listados na seção "Aplicável a".

Coleta de dados

Se você precisar de ajuda do suporte da Microsoft, recomendamos coletar as informações seguindo as etapas mencionadas em Coletar informações usando o TSS para problemas relacionados à implantação.