W ramach zadania masowej aktualizacji pakietu Office do najnowszej wersji na komputerach wszystkich użytkowników (zgodnie ze schematem wdrażania pakietu Office 2016 za pośrednictwem SCCM), musieliśmy opracować proste rozwiązanie do prawidłowego automatycznego usuwania wszelkich innych wersji pakietu Microsoft Office wcześniej zainstalowanych na komputerach. Ma używać tych skryptów w zadaniach do automatycznego usuwania / instalacji pakietu Office za pośrednictwem pakietów SCCM.
W większości przypadków przed zainstalowaniem nowej wersji pakietu Office zaleca się usunięcie wszelkich wcześniej zainstalowanych wersji pakietu MS Office na komputerze (jednoczesne korzystanie z różnych wersji pakietu Office na tym samym komputerze jest obsługiwane, ale nie jest zalecane ze względu na potencjalne problemy). W związku z tym konieczne było opracowanie skryptów, które poprawnie usuną każdą wersję pakietu Office wcześniej zainstalowaną na komputerze.
Treść
- Skrypty VBS OffScrub
- Funkcje uruchamiania skryptów vbs OffScrub przez SCCM
- Skrypt całkowitego usunięcia pakietu Office 2003
- Skrypt całkowitego usunięcia pakietu Office 2007
- Skrypt całkowitego usunięcia pakietu Office 2010
- Kompletny skrypt odinstalowujący Office 2013
- Kompletny skrypt odinstalowywania pakietu Office 2016
- Office Kliknij, aby uruchomić / Pełny skrypt usuwania Office 365
- Automatycznie wykryj wersję pakietu Office
Skrypty VBS OffScrub
Po zapoznaniu się z kilkoma sposobami odinstalowania wcześniej zainstalowanych wersji pakietu Office zdecydowaliśmy się na użycie skryptów OffScrub z obsługi Microsoft Premier. Skrypty Odszoruj są zawarte w oficjalnych pakietach EasyFix (pakiet wymuszonego usunięcia pakietu Office 2007 i 2010, jeśli nie można ich usunąć w standardowy sposób z Panelu sterowania) Inne narzędzie służy do usunięcia pakietu Office 2013 i 2016 - pakiet O15CTRRemove.diagcab, który obejmuje również skrypty OffScrub (patrz przypis poniżej)
Skrypty offscrub - są skryptami VBS do automatyzacji usuwania produktów z pakietu Office. Skrypty te pozwalają całkowicie wyczyścić system ze śladów wcześniej zainstalowanego pakietu Office, niezależnie od jego bieżącej wydajności. Oto główne zalety używania Offscrub do usuwania pakietu Office:
- Możliwość usunięcia starej wersji, nawet jeśli brakuje źródłowych plików instalacyjnych lub pamięci podręcznej pakietu Office lub są one uszkodzone
- Nie ma to wpływu na krzak użytkownika w rejestrze
- Pod warunkiem całkowitego usunięcia
- Usuwanie przestarzałych ustawień i wszystkich produktów (w tym Project, Visio, Visio Viewer)
Skrypt Remove-PreviousOfficeInstalls.ps1 z pakietu O15CTRRemove.diagcab umożliwia określenie zainstalowanej wersji pakietu Office i wywołanie skryptu Offscrub * .vbs dla odpowiedniej wersji pakietu Office.
Przede wszystkim musisz pobrać plik ze strony Microsoft Fixit dla wersji pakietu Office i systemu Windows używanych w infrastrukturze.
Możesz pobrać pakiet O15CTRRemove.diagcab dla różnych wersji pakietu Office i systemu Windows ze strony (https://support.microsoft.com/en-us/kb/971179).
Ważna uwaga. Wcześniej na tej stronie były linki zarówno do pakietu EasyFix, jak i do O15CTRRemove.diagcab. W tej chwili jest tylko link do uniwersalnego pakietu O15CTRRemove.diagcab, którego można użyć do usunięcia pakietu Office 2013/2016 na Windows 7, Windows 8 i Windows 10. Ponadto na początku roku w archiwum O15CTRRemove.diagcab Skrypty Offscrub były obecne dla nowych wersji pakietu Office, teraz pozostały tylko skrypty PowerShell. Te (i inne) wersje skryptów vbs Offscrub można teraz uzyskać tylko z oficjalnego repozytorium programistów pakietu Office na GitHub (OfficeDev).W poniższej tabeli skompilowałem łącza do pakietów Microsoft w celu odinstalowania różnych wersji pakietu Office w różnych systemach operacyjnych.
Wersja Office | Windows 7 | Windows 8 | Windows 10 |
Office 2003 | MicrosoftFixit20054.mini.diagcab | Brakuje | |
Office 2007 | MicrosoftFixit20052.mini.diagcab | Brakuje | |
Office 2010 | MicrosoftFixit20055.mini.diagcab | ||
Office 2013 | Plik OffScrub_O15msi.vbs w serwisie GitHub | ||
Office 2016 | Plik OffScrub_O16msi.vbs w serwisie GitHub | ||
Office 365 / Click-To-Run | Plik OffScrubc2r.vbs w serwisie GitHub |
Pobierz określone pliki i zapisz w katalogu C: \ tools \ OfficeUninstall. * .Diagcab to zwykłe archiwa w formacie CAB, które można rozpakować za pomocą polecenia rozwinąć.
Dla wygody utwórz osobny katalog dla każdej wersji pakietu Office:
ustaw OFFICEREMOVE = C: \ tools \ OfficeUninstall \
md "% OFFICEREMOVE% \ 2003"
md "% OFFICEREMOVE% \ 2007"
md "% OFFICEREMOVE% \ 2010"
md "% OFFICEREMOVE% \ 2013"
md "% OFFICEREMOVE% \ 2016"
md "% OFFICEREMOVE% \ O365"
Teraz w każdym katalogu z pobranych archiwów diagcab rozpakujemy tylko pliki vbs.
rozwiń -i "% OFFICEREMOVE% \ MicrosoftFixit20054.mini.diagcab" -f: OffScrub * .vbs "% OFFICEREMOVE% \ 2003"
rozwiń -i "% OFFICEREMOVE% \ MicrosoftFixit20052.mini.diagcab" -f: OffScrub * .vbs "% OFFICEREMOVE% \ 2007"
rozwiń -i "% OFFICEREMOVE% \ MicrosoftFixit20055.mini.diagcab" -f: OffScrub * .vbs "% OFFICEREMOVE% \ 2010"
I skopiuj te same pliki vbs dla nowych wersji pakietu Office pobranych z GitHub.
move / y "% OFFICEREMOVE% \ OffScrub_O15msi.vbs" "% OFFICEREMOVE% \ 2013"
move / y "% OFFICEREMOVE% \ OffScrub_O16msi.vbs" "% OFFICEREMOVE% \ 2016"
move / y "% OFFICEREMOVE% \ OffScrubc2r.vbs" "% OFFICEREMOVE% \ O365"
Tak więc będziemy mieć takie pliki VBS:
- 2003 \ OffScrub03.vbs
- 2007 \OffScrub07.vbs
- 2010 \OffScrub10.vbs
- 2013 \OffScrub_O15msi.vbs
- 2016 \OffScrub_O16msi.vbs
- O365 \ OffScrubc2r.vbs
Listę dostępnych argumentów dowolnego skryptu OffScrub vbs można uzyskać w następujący sposób:
OffScrub_O16msi.vbs /?
Microsoft Customer Support Service - Narzędzie do usuwania MSI pakietu Office 2016
OffScrub_O16msi.vbs pomaga usunąć MSI Office 2016 i produkty klienckie
Użycie: OffScrub_O16msi.vbs [Lista identyfikatorów konfiguracji produktu] [Opcje]
Funkcje uruchamiania skryptów vbs OffScrub przez SCCM
Aby skrypt usuwania pakietu Office działał poprawnie w 64-bitowych wersjach systemu Windows, gdy jest uruchamiany przez 32-bitowego klienta programu Menedżer konfiguracji, musisz uruchomić odpowiednią wersję cscript.exe. Dlatego w systemie 64-bitowym, aby uruchomić skrypty, musisz uruchomić procesor cscript.exe z katalogu C: \ Windows \ SysWOW64.
Funkcjonalność tę można uzyskać za pomocą skryptu. NativeCScript.cmd:
@echo wyłączone
jeśli „% PROCESSOR_ARCHITEW6432%” == „AMD64” (
„% SystemRoot% \ Sysnative \ cscript.exe”% *
) else (
„% SystemRoot% \ System32 \ cscript.exe”% *
)
Gotowe archiwum ze wszystkimi niezbędnymi plikami można pobrać z naszej strony internetowej: OfficeUninstall.zip (1,4 Mb)
Skrypt całkowitego usunięcia pakietu Office 2003
Polecenie ręcznego uruchomienia skryptu w celu całkowitego usunięcia składników pakietu Office 2003 na komputerze wygląda następująco:
Cscript.exe „% OFFICEREMOVE% \ 2003 \ OffScrub03.vbs” ALL / Quiet / NoCancel / Force / OSE
Jeśli zadanie deinstalacji rozpocznie się jako pakiet SCCM, polecenie deinstalacji może wyglądać następująco:
„% SystemRoot% \ System32 \ cmd.exe” / C „NativeCScript.cmd // B // NoLogo” 2003 \ OffScrub03.vbs „ALL / Quiet / NoCancel / Force / OSE”
Skrypt całkowitego usunięcia pakietu Office 2007
Polecenie całkowitego usunięcia składników pakietu Office 2007 w celu ręcznego uruchomienia:
Cscript.exe "% OFFICEREMOVE% \ 2007 \ OffScrub07.vbs” ALL / Quiet / NoCancel / Force / OSE
Aby uruchomić skrypt za pomocą zadania SCCM:
„% SystemRoot% \ System32 \ cmd.exe” / C „NativeCScript.cmd // B // NoLogo” 2007 \ OffScrub07.vbs „ALL / Quiet / NoCancel / Force / OSE”
Skrypt całkowitego usunięcia pakietu Office 2010
Polecenie całkowitego usunięcia pakietu Microsoft Office 2010 do ręcznego uruchomienia:
Cscript.exe "% OFFICEREMOVE% \ 2010 \ OffScrub10.vbs” ALL / Quiet / NoCancel / Force / OSE
Podczas uruchamiania za pomocą programu Configuration Manager:
„% SystemRoot% \ System32 \ cmd.exe” / C „NativeCScript.cmd // B // NoLogo” 2010 \ OffScrub10.vbs „ALL / Quiet / NoCancel / Force / OSE”
Kompletny skrypt odinstalowujący Office 2013
Polecenie całkowitego usunięcia składników pakietu Microsoft Office 2013 w celu ręcznego uruchomienia:
Cscript.exe „% OFFICEREMOVE% \ 2013 \ OffScrub_O15msi.vbs” ALL / Quiet / NoCancel / Force / OSE
Aby uruchomić skrypt za pomocą zadania SCCM:
„% SystemRoot% \ System32 \ cmd.exe” / C „NativeCScript.cmd // B // NoLogo” 2013 \ OffScrub_O15msi.vbs „ALL / Quiet / NoCancel / Force / OSE”
Kompletny skrypt odinstalowywania pakietu Office 2016
Polecenie ręcznego uruchomienia skryptu w celu całkowitego usunięcia składników pakietu Office 2016 na bieżącym będzie wyglądać następująco:
Cscript.exe „% OFFICEREMOVE% \ 2016 \ OffScrub_O16msi.vbs” WSZYSTKO / Quiet / NoCancel / Force / OSE
Usuwanie pakietu Office 2016 z pakietu SCCM można uruchomić za pomocą następującego polecenia:
„% SystemRoot% \ System32 \ cmd.exe” / C „NativeCScript.cmd // B // NoLogo” 2016 \ OffScrub_O16msi.vbs „ALL / Quiet / NoCancel / Force / OSE”
Office Kliknij, aby uruchomić / Pełny skrypt usuwania Office 365
Polecenie całkowitego usunięcia składników Office Kliknij, aby uruchomić / Office 365 w celu ręcznego uruchomienia:
Cscript.exe „% OFFICEREMOVE% \ C2R \ OffScrubc2r.vbs” WSZYSTKO / Quiet / NoCancel / Force / OSE
Aby uruchomić skrypt za pomocą zadania SCCM:
„% SystemRoot% \ System32 \ cmd.exe” / C „NativeCScript.cmd // B // NoLogo” C2R \ OffScrubc2r.vbs „ALL / Quiet / NoCancel / OSE”
Automatycznie wykryj wersję pakietu Office
Projekt Git Remove-PreviousOfficeInstalls zawiera również skrypt Remove-PreviousOfficeInstalls.ps1, który powinien automatycznie wykryć wersję MS Office zainstalowaną na komputerze i wywołać jeden ze skryptów doradzających OffScrub. Z pewnymi modyfikacjami można go również używać w skryptach dezinstalacyjnych pakietu Office..