В рамках задачи по массовому обновлению Office до последней версии на компьютерах всех пользователей (по схеме ), нам понадобилось разработать простое решение для корректного автоматического удаления любых других ранее установленных на компьютерах версий Microsoft Office. Предполагается использовать данные скрипты в задания по автоматическому удалению / установке Office через пакеты SCCM.
В большинстве случаев, перед установкой новой версии Office, желательно удалить любые ранее установленные на компьютере версии MS Office (одновременное использование разных версий Office на одном компьютере поддерживается, но не рекомендуется из-за потенциальных проблем). Поэтому возникла необходимость разработать скрипты, которые бы корректно удаляли любую версию Office, ранее установленную на ПК.
Рассмотрев несколько способов удаления ранее установленных версий Office, мы остановились на использовании скриптов OffScrub от службы Premier поддержки Microsoft. Скрипты OffScrub входят в состав пакетов официальных пакетов EasyFix (пакет принудительного удаления Office 2007 и 2010, если их не получается удалить стандартным способом из Панели Управления) Для удаления Office 2013 и 2016 используется другой инструмент – пакет O15 CTRRemove. diagcab , в который также входят скрипты OffScrub (см. сноску чуть ниже)
Скрипты Offscrub — представляют собой vbs сценарии для автоматизации удаления продуктов из состава Office. Данные скрипты позволяют полностью очистить систему от следов ранее установленного Office, в независимости от его текущий работоспособности. Перечислим основные преимущества в использования Offscrub для удаления Office:
Скрипт из пакета O15CTRRemove.diagcab позволяет определить установленную версию Office и вызвать скрипт Offscrub*.vbs для соответствующей версии Office.
В первую очередь, необходимо скачать с сайта Microsoft файл FixIt для тех версий Office и Windows, которые используются в вашей инфраструктуре.
Скачать пакет O15CTRRemove.diagcab для разных версий Office и Windows можно со страницы (https://support.microsoft.com/en-us/kb/971179).
Важное примечание . Ранее на этой странице присутствовали ссылки как на пакет EasyFix, так и на O15CTRRemove.diagcab. На данный момент осталась ссылка только на универсальный пакет O15CTRRemove.diagcab, который можно использовать для удаления Office 2013 / 2016 на Window 7, Windows 8 и Windows 10. Кроме того, еще в начале года в архиве O15CTRRemove.diagcab присутствовали скрипты Offscrub для новых версий Office, то теперь в нем остались только PowerShell скрипты. Эти (и другие) версии vbs Offscrub скриптов теперь можно получить только с официального репозитория разработчиков Office на GitHub (OfficeDev).
Версия Office | Windows 7 | Windows 8 | Windows 10 |
Office 2003 | MicrosoftFixit20054.mini.diagcab | Отсутствует | |
Office 2007 | MicrosoftFixit20052.mini.diagcab | Отсутствует | |
Office 2010 | MicrosoftFixit20055.mini.diagcab | ||
Office 2013 | Файл OffScrub_O15msi.vbs на GitHub | ||
Office 2016 | Файл OffScrub_O16msi.vbs на GitHub | ||
Office 365/ Click-To-Run | Файл OffScrubc2r.vbs на GitHub |
Качаем указанные файлы и сохраняем в каталог C:\tools\OfficeUninstall. Файлы *.diagcab представляют собой обычные архивы в CAB формате, которые можно распаковать с помощью команды expand .
Итак, для удобства для каждой версии Office создадим отдельный каталог:
set OFFICEREMOVE=C:\tools\OfficeUninstall\
md "%OFFICEREMOVE%\2003"
md "%OFFICEREMOVE%\2007"
md "%OFFICEREMOVE%\2010"
md "%OFFICEREMOVE%\2013"
md "%OFFICEREMOVE%\2016"
md "%OFFICEREMOVE%\O365"
Теперь в каждый каталог из скачанных архивов diagcab распакуем только vbs файлы.
expand -i "%OFFICEREMOVE%\MicrosoftFixit20054.mini.diagcab" -f:OffScrub*.vbs "%OFFICEREMOVE%\2003"
expand -i "%OFFICEREMOVE%\MicrosoftFixit20052.mini.diagcab" -f:OffScrub*.vbs "%OFFICEREMOVE%\2007"
expand -i "%OFFICEREMOVE%\MicrosoftFixit20055.mini.diagcab" -f:OffScrub*.vbs "%OFFICEREMOVE%\2010"
И скопируем тужа же vbs файлы, для новых версий Office, скачанные с GitHub.
move /y "%OFFICEREMOVE%\OffScrub_O15msi.vbs" "%OFFICEREMOVE%\2013"
move /y "%OFFICEREMOVE%\OffScrub_O16msi.vbs" "%OFFICEREMOVE%\2016"
move /y "%OFFICEREMOVE%\OffScrubc2r.vbs" "%OFFICEREMOVE%\O365"
Таким образом, у нас появится такие vbs файлы:
Список доступных аргументов любого vbs скрипта OffScrub можно получить так:
OffScrub_O16msi.vbs /?
Microsoft Customer Support Service – Office 2016 MSI Removal Utility
OffScrub_O16msi.vbs helps to remove Office 2016 MSI Server and Client products
Usage: OffScrub_O16msi.vbs
Для того, чтобы скрипт удаления Office работал корректно на 64 битных версиях Windows, при запуске их 32-битным клиентом Configuration Manager, нужно запускать соответствующую версию cscript.exe. Поэтому на 64 битной системе для запуска сценариев нужно запускать процессор cscript.exe из каталога C:\Windows\SysWOW64.
Данного функционала можно добиться скриптом NativeCScript.cmd :
@echo off
if "%PROCESSOR_ARCHITEW6432%"=="AMD64" (
"%SystemRoot%\Sysnative\cscript.exe" %*
) else (
"%SystemRoot%\System32\cscript.exe" %*
)
Готовый архив со всеми необходимыми файлами можно скачать с нашего сайта: (1,4 Мб)
Команда ручного запуска скрипта полного удаления компонентов Office 2003 на компьютере будет выглядеть так:
Cscript.exe "%OFFICEREMOVE%\2003\OffScrub03.vbs” ALL /Quiet /NoCancel /Force /OSE
Если задание удаления запускается в виде пакета SCCM, команда удаления может выглядеть так:
"%SystemRoot%\System32\cmd.exe" /C "NativeCScript.cmd //B //NoLogo "2003\OffScrub03.vbs" ALL /Quiet /NoCancel /Force /OSE"
Команда полного удаления компонентов Office 2007 для ручного запуска:
Cscript.exe "%OFFICEREMOVE%\2007\OffScrub07.vbs” ALL /Quiet /NoCancel /Force /OSE
"%SystemRoot%\System32\cmd.exe" /C "NativeCScript.cmd //B //NoLogo "2007\OffScrub07.vbs" ALL /Quiet /NoCancel /Force /OSE"
Команда полного удаления Microsoft Office 2010 для ручного запуска:
Cscript.exe "%OFFICEREMOVE%\2010\OffScrub10.vbs” ALL /Quiet /NoCancel /Force /OSE
При запуске через Configuration Manager:
"%SystemRoot%\System32\cmd.exe" /C "NativeCScript.cmd //B //NoLogo "2010\OffScrub10.vbs" ALL /Quiet /NoCancel /Force /OSE"
Команда полного удаления компонентов Microsoft Office 2013 для ручного запуска:
Cscript.exe "%OFFICEREMOVE%\2013\OffScrub_O15msi.vbs” ALL /Quiet /NoCancel /Force /OSE
Для запуска скрипта через задание SCCM:
"%SystemRoot%\System32\cmd.exe" /C "NativeCScript.cmd //B //NoLogo "2013\OffScrub_O15msi.vbs" ALL /Quiet /NoCancel /Force /OSE"
Команда ручного запуска скрипта полного удаления компонентов Office 2016 на текущем будет выглядеть так:
Cscript.exe "%OFFICEREMOVE%\2016\OffScrub_O16msi.vbs” ALL /Quiet /NoCancel /Force /OSE
Удаление Office 2016 из пакета SCCM можно запустить такой командой:
"%SystemRoot%\System32\cmd.exe" /C "NativeCScript.cmd //B //NoLogo "2016\OffScrub_O16msi.vbs" ALL /Quiet /NoCancel /Force /OSE"
Команда полного удаления компонентов Office Click to Run / Office 365 для ручного запуска:
Cscript.exe "%OFFICEREMOVE%\C2R\OffScrubc2r.vbs” ALL /Quiet /NoCancel /Force /OSE
Для запуска скрипта через задание SCCM:
"%SystemRoot%\System32\cmd.exe" /C "NativeCScript.cmd //B //NoLogo "C2R\OffScrubc2r.vbs" ALL /Quiet /NoCancel /OSE"
В состав проекта Remove-PreviousOfficeInstalls на Git входит также скрипт Remove-PreviousOfficeInstalls.ps1 , который должен автоматически определять установленную на компьютере версию MS Office и вызывать один из советующих OffScrub скриптов. С определенными модификациями его также можно использовать в сценариях автоматического удаления Office.
В «десятку», независимо от редакции, разработчик встраивает пакет приложений Office 365, который предназначен стать заменой привычному Microsoft Office. Однако этот пакет работает по подписке, достаточно дорогой, и задействует облачные технологии, что многим пользователям не нравится – они бы предпочли удалить этот пакет и установить более привычный. Наша сегодняшняя статья призвана помочь это сделать.
Поставленную задачу можно решить несколькими способами – задействованием специальной утилиты от Microsoft или же системным средством удаления программ. ПО для деинсталляции использовать не рекомендуем: Office 365 тесно интегрирован в систему, и его удаление сторонним инструментом может нарушить её работу, а во-вторых, приложение от сторонних разработчиков всё равно не сможет удалить его полностью.
Самый простой метод решения задачи – использование оснастки «Программы и компоненты» . Алгоритм следующий:
Этот способ самый простой из всех, и в то же время самый ненадёжный, поскольку часто пакет Офис 365 в указанной оснастке не отображается, и требуется задействовать альтернативное средство для его удаления.
Пользователи часто жаловались на отсутствие возможности удалить этот пакет, поэтому недавно разработчики выпустили специальную утилиту, с помощью которой можно деинсталлировать Office 365.
– это автоматически.
Если после этого действия, в компьютере обнаружены некоторые папки, относящиеся к этому пакету программ, следует воспользоваться еще одним способом.
Помните, что ручная деинсталляция длительный и сложный процесс, поэтому внимательно читайте руководство!
Для начала следует определить тип установки. Для этого запустите любое приложение Office и кликните на «Файл/Учетная запись». Если при инсталляции использовалась технология «нажми и работай», то перед вами появятся параметры обновления. В случая инсталляции при помощи MSI-пакета, установка обновлений возможна только через центр Windows.
Удаление пакета «Click to Run»:
Завершение задач при помощи диспетчера: откройте раздел «Процессы» и если вы увидите, что задачи, указанные на рисунке ниже, есть в перечне – их следует завершить.
Если Office был установлен посредством MSI, то удаление происходит при помощи стандартных средств деинсталляции системы Windows.
ВАЖНО! После удаления софта данной утилитой, стоит запустить CCleaner и почистить Виндовс 10 от старых файлов.
Для того, чтобы выполнить удаление офисной программы из системы Windows 10, стоит проделать ряд несложных действий:
schtasks.exe /delete /tn "\Microsoft\Office\Office Automatic Updates"
schtasks.exe /delete /tn "\Microsoft\Office\Office Subscription Maintenance"
schtasks.exe /delete /tn "\Microsoft\Office\Office ClickToRun Service Monitor"
schtasks.exe /delete /tn "\Microsoft\Office\OfficeTelemetryAgentLogOn2016"
schtasks.exe /delete /tn "\Microsoft\Office\OfficeTelemetryAgentFallBack2016"
ВАЖНО! Здесь описан метод для Microsoft Office 2016. Если вы используете 2010 версию, то в путях, где указано 2016, указываем 2010.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\ClickToRun
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\AppVISV
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Microsoft Office - ru-ru
HKEY_CURRENT_USER\Software\Microsoft\Office
ВАЖНО! После удаления пакета офисных программ нужно перезагрузить компьютер и запустить очистку системы с помощью любого чистильщика.
О том, как удалить пакет офисных программ из Windows 10, смотрите в видео: