Skripty pro úplné odstranění starých verzí sady Office

V rámci úkolu rozsáhlé aktualizace sady Office na nejnovější verzi v počítačích všech uživatelů (podle schématu nasazení sady Office 2016 prostřednictvím SCCM) jsme potřebovali vyvinout jednoduché řešení pro správné automatické odstranění všech ostatních verzí sady Microsoft Office dříve nainstalovaných v počítačích. Předpokládá se, že tyto skripty použijí v úlohách pro automatické odebrání / instalaci sady Office prostřednictvím balíčků SCCM.

Ve většině případů je vhodné před instalací nové verze sady Office odebrat všechny dříve nainstalované verze sady MS Office v počítači (současné používání různých verzí sady Office ve stejném počítači je podporováno, ale nedoporučuje se kvůli možným problémům). Proto bylo třeba vyvinout skripty, které by správně odstranily jakoukoli verzi sady Office dříve nainstalovanou v počítači.

Obsah:

  • Skripty VBS OffScrub
  • Funkce běhu skriptů vbs OffScrub prostřednictvím SCCM
  • Kompletní skript pro odstranění sady Office 2003
  • Kompletní skript pro odstranění sady Office 2007
  • Kompletní skript pro odstranění sady Office 2010
  • Office 2013 dokončil odinstalační skript
  • Office 2016 dokončil odinstalační skript
  • Office Klepnutím spustíte / Office 365 Complete Removal Script
  • Automaticky detekovat verzi Office

Skripty VBS OffScrub

Po kontrole několika způsobů odinstalace dříve nainstalovaných verzí sady Office jsme se rozhodli používat skripty OffScrub od podpory Microsoft Premier. Skripty Offscrub jsou součástí oficiálních balíčků EasyFix (balíček nuceného odstranění sady Office 2007 a 2010, pokud je nelze z ovládacího panelu odebrat standardním způsobem) K odstranění sady Office 2013 a 2016 se používá jiný nástroj - balíček O15CTROdebrat.diagcab, který také obsahuje skripty OffScrub (viz poznámka pod čarou níže)

Offscrub skripty - jsou skripty vbs pro automatizaci odstraňování produktů z Office. Tyto skripty umožňují zcela vyčistit systém od stop dříve nainstalované sady Office, bez ohledu na její aktuální výkon. Hlavní výhody používání nástroje Offscrub k odebrání sady Office:

  • Možnost odstranit starou verzi, i když chybí nebo jsou poškozené zdrojové soubory instalace nebo mezipaměť sady Office
  • Pouzdro uživatele v registru není ovlivněno
  • Kompletní odstranění zajištěno
  • Odstranění zastaralých nastavení a všech produktů (včetně Project, Visio, Visio Viewer)

Skript Remove-PreviousOfficeInstalls.ps1 z balíčku O15CTRRemove.diagcab umožňuje určit nainstalovanou verzi sady Office a vyvolat skript Offscrub * .vbs pro odpovídající verzi sady Office.

Nejprve musíte soubor stáhnout z webu společnosti Microsoft Fixit pro verze Office a Windows, které se používají ve vaší infrastruktuře.

Balíček O15CTRRemove.diagcab si můžete stáhnout ze stránky (https://support.microsoft.com/en-us/kb/971179) pro různé verze sady Office a Windows..

Důležitá poznámka. Na této stránce dříve byly odkazy na balíček EasyFix a O15CTRRemove.diagcab. V současné době existuje pouze odkaz na univerzální balíček O15CTRRemove.diagcab, který lze použít k odebrání sady Office 2013/2016 v systémech Windows 7, Windows 8 a Windows 10. Kromě toho na začátku roku v archivu O15CTRRemove.diagcab Pro nové verze sady Office byly přítomny skripty offscrub, nyní v nich zůstaly pouze skripty PowerShell. Tyto (a další) verze skriptů vbs Offscrub lze nyní získat pouze z oficiálního úložiště vývojářů Office na GitHub (OfficeDev).

V následující tabulce jsem zkompiloval odkazy na balíčky Microsoft pro odinstalování různých verzí sady Office v různých operačních systémech.

Office verzeWindows 7Windows 8Windows 10
Office 2003MicrosoftFixit20054.mini.diagcab Chybí
Office 2007MicrosoftFixit20052.mini.diagcab Chybí
Kancelář 2010MicrosoftFixit20055.mini.diagcab
Kancelář 2013Soubor OffScrub_O15msi.vbs na GitHubu
Kancelář 2016OffScrub_O16msi.vbs Soubor na GitHubu
Office 365 / Click-To-RunSoubor OffScrubc2r.vbs na GitHubu

Stáhněte určené soubory a uložte do adresáře C: \ tools \ OfficeUninstall. * .Diagcab soubory jsou běžné archivy ve formátu CAB, které lze pomocí příkazu rozbalit rozbalit.

Pro snadnější vytvoření samostatného adresáře pro každou verzi sady Office:

set OFFICEREMOVE = C: \ tools \ OfficeUninstall \
md "% OFFICEREMOVE% \ 2003"
md "% OFFICEREMOVE% \ 2007"
md "% OFFICEREMOVE% \ 2010"
md "% OFFICEREMOVE% \ 2013"
md "% OFFICEREMOVE% \ 2016"
md "% OFFICEREMOVE% \ O365"

Nyní v každém adresáři ze stažených archivů diagcabů rozbalíme pouze soubory vbs.

rozbalte -i "% OFFICEREMOVE% \ MicrosoftFixit20054.mini.diagcab" -f: OffScrub * .vbs "% OFFICEREMOVE% \ 2003"
rozbalte -i "% OFFICEREMOVE% \ MicrosoftFixit20052.mini.diagcab" -f: OffScrub * .vbs "% OFFICEREMOVE% \ 2007"
expand -i "% OFFICEREMOVE% \ MicrosoftFixit20055.mini.diagcab" -f: OffScrub * .vbs "% OFFICEREMOVE% \ 2010"

A zkopírujte stejné soubory VBS pro nové verze sady Office stažené z GitHubu.

přesunout / y "% OFFICEREMOVE% \ OffScrub_O15msi.vbs" "% OFFICEREMOVE% \ 2013"
přesunout / y "% OFFICEREMOVE% \ OffScrub_O16msi.vbs" "% OFFICEREMOVE% \ 2016"
přesunout / y "% OFFICEREMOVE% \ OffScrubc2r.vbs" "% OFFICEREMOVE% \ O365"

Budeme tedy mít takové soubory vbs:

  • 2003 \ OffScrub03.vbs
  • 2007 \OffScrub07.vbs
  • 2010 \OffScrub10.vbs
  • 2013 \OffScrub_O15msi.vbs
  • 2016 \OffScrub_O16msi.vbs
  • O365 \ OffScrubc2r.vbs

Seznam dostupných argumentů libovolného skriptu OffScrub vbs lze získat následujícím způsobem:

OffScrub_O16msi.vbs /?

Služba podpory zákazníků společnosti Microsoft - Office 2016 MSI Removal Utility
OffScrub_O16msi.vbs pomáhá odstranit produkty Office 2016 MSI Server a Klientské produkty
Použití: OffScrub_O16msi.vbs [Seznam konfiguračních ID produktů] [Možnosti]

Funkce běhu skriptů vbs OffScrub prostřednictvím SCCM

Aby skript pro odstranění sady Office fungoval správně v 64bitových verzích systému Windows, musíte při spuštění klientem 32bitové konfigurace Manager spustit odpovídající verzi cscript.exe. V 64bitovém systému je proto nutné ke spuštění skriptů spustit procesor cscript.exe z adresáře C: \ Windows \ SysWOW64.

Tuto funkci lze dosáhnout skriptem. NativeCScript.cmd:

@echo vypnuto
pokud "% PROCESSOR_ARCHITEW6432%" == "AMD64" (
"% SystemRoot% \ Sysnative \ cscript.exe"% *
) jinde (
"% SystemRoot% \ System32 \ cscript.exe"% *
)

Hotový archiv se všemi potřebnými soubory si můžete stáhnout z našeho webu: OfficeUninstall.zip (1,4 Mb)

Kompletní skript pro odstranění sady Office 2003

Příkaz ručně spustit skript pro úplné odebrání součástí sady Office 2003 v počítači bude vypadat takto:

Cscript.exe "% OFFICEREMOVE% \ 2003 \ OffScrub03.vbs" ALL / Quiet / NoCancel / Force / OSE

Pokud úloha odinstalace začíná jako balíček SCCM, příkaz odinstalace může vypadat takto:

"% SystemRoot% \ System32 \ cmd.exe" / C "NativeCScript.cmd // B // NoLogo" 2003 \ OffScrub03.vbs "ALL / Quiet / NoCancel / Force / OSE"

Kompletní skript pro odstranění sady Office 2007

Příkaz k úplnému odebrání součástí sady Office 2007 pro ruční spuštění:

Cscript.exe "% OFFICEREMOVE% \ 2007 \ OffScrub07.vbs" ALL / Quiet / NoCancel / Force / OSE

Spuštění skriptu prostřednictvím úlohy SCCM:

"% SystemRoot% \ System32 \ cmd.exe" / C "NativeCScript.cmd // B // NoLogo" 2007 \ OffScrub07.vbs "ALL / Quiet / NoCancel / Force / OSE"

Kompletní skript pro odstranění sady Office 2010

Příkaz k úplnému odebrání sady Microsoft Office 2010 pro ruční spuštění:

Cscript.exe "% OFFICEREMOVE% \ 2010 \ OffScrub10.vbs" ALL / Quiet / NoCancel / Force / OSE

Při spuštění Správce konfigurace:

"% SystemRoot% \ System32 \ cmd.exe" / C "NativeCScript.cmd // B // NoLogo" 2010 \ OffScrub10.vbs "ALL / Quiet / NoCancel / Force / OSE"

Office 2013 dokončil odinstalační skript

Příkaz k úplnému odebrání součástí sady Microsoft Office 2013 pro ruční spuštění:

Cscript.exe "% OFFICEREMOVE% \ 2013 \ OffScrub_O15msi.vbs” ALL / Quiet / NoCancel / Force / OSE

Spuštění skriptu prostřednictvím úlohy SCCM:

"% SystemRoot% \ System32 \ cmd.exe" / C "NativeCScript.cmd // B // NoLogo" 2013 \ OffScrub_O15msi.vbs "ALL / Quiet / NoCancel / Force / OSE"

Office 2016 dokončil odinstalační skript

Příkaz ručně spustit skript pro úplné odebrání součástí sady Office 2016 z aktuálního bude vypadat takto:

Cscript.exe "% OFFICEREMOVE% \ 2016 \ OffScrub_O16msi.vbs” ALL / Quiet / NoCancel / Force / OSE

Odebrání sady Office 2016 z balíčku SCCM lze spustit pomocí následujícího příkazu:

"% SystemRoot% \ System32 \ cmd.exe" / C "NativeCScript.cmd // B // NoLogo" 2016 \ OffScrub_O16msi.vbs "ALL / Quiet / NoCancel / Force / OSE"

Office Klepnutím spustíte / Office 365 Complete Removal Script

Příkaz k úplnému odebrání sady Office Klepnutím spustíte součásti / sady Office 365 pro ruční spuštění:

Cscript.exe "% OFFICEREMOVE% \ C2R \ OffScrubc2r.vbs" ALL / Quiet / NoCancel / Force / OSE

Spuštění skriptu prostřednictvím úlohy SCCM:

"% SystemRoot% \ System32 \ cmd.exe" / C "NativeCScript.cmd // B // NoLogo" C2R \ OffScrubc2r.vbs "ALL / Quiet / NoCancel / OSE"

Automaticky detekovat verzi Office

Projekt Git Remove-PreviousOfficeInstalls obsahuje také skript Remove-PreviousOfficeInstalls.ps1, který by měl automaticky detekovat verzi MS Office nainstalovanou v počítači a zavolat jeden z skriptů podporujících OffScrub. S určitými úpravami může být také použit v odinstalačních skriptech sady Office..