Jak programowo zautomatyzować odinstalowywanie aktualizacji pakietu Office

Ten artykuł został napisany przez Erica Ashtona, starszego inżyniera eskalacji wsparcia.

W tym artykule opisano sposób automatycznego odinstalowywania aktualizacji pakietu Office przy użyciu wiersza polecenia podobnego do następującego:

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

Określanie identyfikatora GUID zainstalowanej wersji pakietu Office

Aby określić identyfikator GUID zainstalowanej wersji pakietu Office, wykonaj następujące kroki:

  1. Znajdź i sprawdź następujący klucz rejestru.

    W przypadku 32-bitowego systemu operacyjnego

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall

    W przypadku 64-bitowego systemu operacyjnego

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

  2. Zapoznaj się z następującymi artykułami, aby znaleźć identyfikator GUID w wersji pakietu Office, odpowiednio do twojej sytuacji:

    Uwaga

    Sprawdź, czy znajdujesz prawidłowy identyfikator GUID, sprawdzając produkt w polu DisplayName klucza wymienionego w identyfikatorze GUID.

Określanie identyfikatora GUID aktualizacji

Aby określić identyfikator GUID aktualizacji, należy sprawdzić właściwości pliku MSP, który znajduje się w pliku .exe aktualizacji.

Najpierw należy wyodrębnić plik MSP z pliku wykonywalnego aktualizacji. Aby to zrobić, uruchom następujące polecenie, aby wyodrębnić plik do katalogu c:\temp:

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

Aby na przykład wyodrębnić zawartość z 4462201 aktualizacji pakietu Office 2013 (mso2013-kb4462201-fullfile-x64-glb.exe), uruchom następujące polecenie:

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

Jeśli masz plik MSP z pliku wykonywalnego aktualizacji, musisz znaleźć identyfikator GUID aktualizacji. Aby znaleźć identyfikator GUID, kliknij prawym przyciskiem myszy plik MSP, znajdź pozycję Właściwości, a następnie poszukaj numeru poprawki.

Czasami w sekcji Numer poprawki jest wiele liczb. Skopiuj i wklej listę numerów poprawek do Notatnika, a następnie usuń wszystkie z wyjątkiem pierwszej liczby. Pierwszą liczbą na liście numerów poprawek jest identyfikator GUID.

Teraz znasz identyfikator GUID w wersji pakietu Office i identyfikator GUID aktualizacji pakietu Office. Możesz uruchomić następujące polecenie, aby programowo usunąć aktualizację.

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

Uwaga

Użyj /qb do automatycznego odinstalowywania z paskiem postępu lub użyj /qn do całkowicie dyskretnego odinstalowania.

Często zadawane pytania

Jak ustalić, czy aktualizacja jest instalowana programowo, jeśli znamy identyfikator GUID aktualizacji?

Można to zrobić zaraz po przekonwertowaniu identyfikatora GUID aktualizacji na skompresowany identyfikator GUID. Poniżej przedstawiono kroki dotyczące konwertowania nieskompresowanego identyfikatora GUID na skompresowany identyfikator GUID.

  1. Oddziel nieskompresowany identyfikator GUID na pięć sekcji i upuść kreski. Na przykład nieskompresowany identyfikator GUID bez kreski jest wyświetlany jako 90110409 6000 11D3 8CFE 0150048383C9.

  2. Odwróć kolejność każdej liczby pierwszych trzech sekcji. W tym przykładzie pierwsze trzy sekcje są wyświetlane jako 90401109 0006 3D11.

  3. W czwartej i piątej sekcji należy transponować co dwa znaki. Aby to zrobić, wykonaj następujące kroki.

    1. Podziel dwie sekcje na co dwa znaki oddzielone spacjami. Liczby są wyświetlane jako 8C FE 01 50 04 83 83 C9.
    2. Transponuj każdą sekcję. Liczby są wyświetlane jako C8 EF 10 05 40 38 38 9C.
  4. Umieść wszystkie liczby razem i usuń spacje. Skompresowany identyfikator GUID będzie miał wartość 9040110900063D11C8EF10054038389C.

Następnie wykonaj zapytanie dotyczące skompresowanego identyfikatora GUID w następującej lokalizacji rejestru:

HKEY_CLASSES_ROOT\Installer\Patches

Jeśli identyfikator GUID istnieje, oznacza to, że aktualizacja jest zainstalowana.

Czy można odinstalować aktualizację, która nie jest natywnie możliwa do odinstalowania?

Mimo że nie jest to zalecane ani obsługiwane przez firmę Microsoft, można odinstalować aktualizacje oznaczone jako niezainstalowane. Ponownie należy przekonwertować identyfikator GUID aktualizacji na skompresowany identyfikator GUID przy użyciu poprzedniej metody.

Możesz określić, czy aktualizację można odinstalować, używając następującego klucza rejestru:

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

"Uninstallable"=dword:00000001

Uwaga

Jeśli aktualizacji nie można odinstalować natywnie, można zmienić wartość możliwej do odinstalowania w tej lokalizacji rejestru na 1, a następnie aktualizacja będzie dostępna do odinstalowania.

Mamy aktualizację, która zawiera wiele plików MSP. Czy to normalne? Czy musielibyśmy je wszystkie odinstalować?

Często aktualizacje pakietu Office zawierają wiele plików MSP. Jeśli chcesz całkowicie usunąć aktualizację, musisz odinstalować każdy plik MSP.

Często zdarza się również, że aktualizacje pakietu Office mają zastosowanie do wielu produktów. W związku z tym są one wyświetlane wiele razy w odinstalowywanie lub zmienianie programu. W takich przypadkach, aby całkowicie usunąć aktualizację, należy uruchomić polecenie dezinstalacji przeznaczone dla identyfikatora GUID dla każdego produktu pakietu Office z zainstalowaną aktualizacją.