Partilhar via


Como automatizar a desinstalação de uma atualização do Office através de programação

Este artigo foi escrito por Eric Ashton, Engenheiro Sénior de Escalamento de Apoio.

Este artigo descreve como desinstalar automaticamente as atualizações do Office através de uma linha de comandos semelhante à seguinte:

%windir%\System32\msiexec.exe /package {Office GUID} /uninstall {Update GUID} /QN

Determinar o GUID da versão do Office instalada

Para determinar o GUID da versão do Office instalada, siga estes passos:

  1. Localize e verifique a seguinte chave de registo.

    Para o SO de 32 bits

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall

    Para SO de 64 bits

    HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall

  2. Consulte os seguintes artigos para encontrar o GUID na versão do Office, conforme adequado à sua situação:

    Nota

    Verifique se encontra o GUID correto ao verificar o produto no campo DisplayName da chave listada no GUID.

Determinar o GUID da atualização

Para determinar o GUID da atualização, tem de verificar as propriedades do ficheiro MSP contido no ficheiro de atualização .exe.

Primeiro, tem de extrair o ficheiro MSP do executável de atualização. Para tal, execute o seguinte comando para extrair o ficheiro para o diretório c:\temp:

<MSP file name> /extract:c:\temp

Por exemplo, para extrair conteúdo da atualização do Office 2013 4462201 (mso2013-kb4462201-fullfile-x64-glb.exe), execute o seguinte comando:

mso2013-kb4462201-fullfile-x64-glb.exe /extract:c:\temp

Quando tiver o MSP do executável de atualização, tem de encontrar o GUID da atualização. Para localizar o GUID, clique com o botão direito do rato no ficheiro MSP, localize Propriedades e, em seguida, procure o Número de revisão.

Por vezes, existem muitos números na secção Número de revisão . Copie e cole a lista de números de revisão no bloco de notas e, em seguida, elimine todos, exceto o primeiro número. O primeiro número na lista de números de revisão é o GUID.

Agora, conhece o GUID na versão do Office e o GUID da atualização do Office. Pode executar o seguinte comando para remover a atualização através de programação.

%windir%\System32\msiexec.exe /package {Office GUID} /uninstall {Update GUID} /qn

Nota

Utilize /qb para uma desinstalação automatizada com uma barra de progresso ou utilize /qn para uma desinstalação completamente silenciosa.

FAQs

Como podemos determinar se a atualização é instalada programaticamente se soubermos o GUID da atualização?

Pode fazê-lo assim que converter o GUID de atualização para o GUID comprimido. Eis os passos sobre como converter o GUID descomprimido para o GUID comprimido.

  1. Separe o GUID descomprimido em cinco secções e largue os traços. Por exemplo, um GUID não comprimido sem traços é apresentado como 90110409 6000 11D3 8CFE 0150048383C9.

  2. Inverter a ordem de cada número das três primeiras secções. Neste exemplo, as três primeiras secções são apresentadas como 90401109 0006 3D11.

  3. Na quarta e quinta secções, tem de transpor a cada dois carateres. Para tal, siga estes passos:

    1. Divida as duas secções a cada dois carateres separados por espaços. Os números são apresentados como 8C FE 01 50 04 83 83 C9.
    2. Transpor cada secção. Os números são apresentados como C8 EF 10 05 40 38 38 9C.
  4. Junte todos os números e remova os espaços. O GUID comprimido passará a ser 9040110900063D11C8EF10054038389C.

Em seguida, consulte o GUID comprimido na seguinte localização do registo:

HKEY_CLASSES_ROOT\Installer\Patches

Se o GUID existir, significa que a atualização está instalada.

É possível desinstalar uma atualização que não seja desinstalável nativamente?

Embora não seja recomendado nem suportado pela Microsoft, pode desinstalar atualizações marcadas como não desinstaláveis. Mais uma vez, tem de converter o GUID de atualização num GUID comprimido com o método anterior.

Pode determinar se a atualização é desinstalável com a seguinte chave de registo:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Products\Office GUID\Patches\Compressed GUID

"Desinstalável"=dword:00000001

Nota

Se a atualização não for desinstalável nativamente, seria possível alterar o valor Desinstalável nesta localização do registo para 1 e, em seguida, a atualização estaria disponível para desinstalar.

Temos uma atualização que tem vários ficheiros MSP dentro do mesmo. Isto é normal? Teríamos de desinstalá-los a todos?

É comum que as atualizações do Office contenham vários ficheiros MSP. Se quiser remover completamente a atualização, tem de desinstalar cada ficheiro MSP.

Também é comum que as atualizações do Office se apliquem a vários produtos. Por conseguinte, são apresentados várias vezes em Desinstalar ou alterar um programa. Nestes casos, para remover completamente a atualização, tem de executar o comando de desinstalação destinado ao GUID para cada produto do Office que tenha a atualização instalada.