Para resolver el problema de la actualización masiva de MS Office a la última versión en todas las computadoras de los usuarios (Office 2016 debería implementarse a través de SCCM y activarse en el servidor KMS de Office 2016), necesitábamos desarrollar un script simple para eliminar automáticamente y correctamente cualquier archivo previamente instalado. versiones de Microsoft Office. Este script debe usarse en tareas de desinstalación / instalación automática de Office usando paquetes SCCM.
Antes de instalar una nueva versión de Office, se recomienda eliminar cualquier versión de MS Office instalada previamente (se admite el uso simultáneo de diferentes versiones de Office en una computadora, pero no se recomienda debido a problemas potenciales). Por lo tanto, era necesario desarrollar un script que desinstalara correctamente cualquier versión de Office instalada previamente en una PC.
Secuencias de comandos de OffScrub VBS
Después de considerar varias formas de desinstalación de versiones de Office instaladas previamente, nos detuvimos en el uso de scripts OffScrub del servicio de soporte de Microsoft Premier. OffScrub Los scripts están incluidos en el paquete oficial EasyFix. (El paquete de desinstalación forzada de Office 2007 y 2010 si no es posible desinstalarlos desde el Panel de control). Para eliminar Office 2013 y 2016, se usa otra herramienta, Paquete O15CTRRemove.diagcab, que también contiene secuencias de comandos OffScrub (consulte la nota a continuación).
OffScrub es un conjunto de scripts de VBS para la eliminación automática de productos de Office. Estos scripts le permiten limpiar completamente el sistema de los componentes de Office instalados previamente, independientemente de su operatividad actual. Estas son las principales ventajas de usar Offscrub para desinstalar Office:
- La capacidad de desinstalar la versión anterior de Office incluso si no hay archivos de instalación originales o caché de Office o están dañados.
- Las claves de usuario del registro no se ven afectadas.
- Eliminación completa de Office.
- Eliminación de todas las configuraciones obsoletas y todos los productos (incluidos Project, Visio, Visio Viewer).
Remove-PreviousOfficeInstalls.ps1 El script del paquete O15CTRRemove.diagcab permite detectar la versión de Office instalada y llamar a Offscrub * .vbs para la versión de Office correspondiente.
Primero que nada, descarga Arreglalo del sitio web oficial de Microsoft para las versiones de Office y Windows que está utilizando en su infraestructura. Puede descargar el paquete O15CTRRemove.diagcab para diferentes versiones de Office y Windows desde esta página (https://support.microsoft.com/en-us/kb/971179).
En la siguiente tabla, he recopilado los enlaces a los paquetes de Microsoft para desinstalar diferentes versiones de Office en diferentes versiones del sistema operativo.
Descargue estos archivos y guárdelos en C: tools OfficeUninstall. * Los archivos .diagcab son archivos comunes en formato CAB y puede descomprimirlos usando el expandir comando.
Para hacerlo más fácil, cree un directorio separado para cada versión de Office:
set OFFICEREMOVE=C:toolsOfficeUninstall
md "%OFFICEREMOVE%2003"
md "%OFFICEREMOVE%2007"
md "%OFFICEREMOVE%2010"
md "%OFFICEREMOVE%2013"
md "%OFFICEREMOVE%2016"
md "%OFFICEREMOVE%O365"
Desempaquete solo los archivos VBS de los archivos diagcab descargados.
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"
Y copie los archivos VBS para las nuevas versiones de Office descargadas de GitHub en los mismos directorios.
move /y "%OFFICEREMOVE%OffScrub_O15msi.vbs" "%OFFICEREMOVE%2013"
move /y "%OFFICEREMOVE%OffScrub_O16msi.vbs" "%OFFICEREMOVE%2016"
move /y "%OFFICEREMOVE%OffScrubc2r.vbs" "%OFFICEREMOVE%O365"
Por lo tanto, tenemos los siguientes archivos VBS:
- 2003 OffScrub03.vbs
- 2007 OffScrub07.vbs
- 2010 OffScrub10.vbs
- 2013 OffScrub_O15msi.vbs
- 2016 OffScrub_O16msi.vbs
- O365 OffScrubc2r.vbs
Puede obtener la lista de argumentos disponibles para cualquier script OffScrub VBS de la siguiente manera:
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 [List of config ProductIDs] [Options]
Ejecución de scripts de OffScrub VBS mediante SCCM
Para que el script de desinstalación de Office funcione correctamente en Windows x64 si lo ejecuta el cliente de Configuration Manager de 32 bits, debe ejecutar la versión cscript.exe correspondiente. Entonces, para ejecutar los escenarios en un sistema de 64 bits, debe ejecutar cscript.exe desde C: Windows SysWOW64.
Puedes lograr esto usando Secuencia de comandos NativeCScript.cmd:
@echo off
if "%PROCESSOR_ARCHITEW6432%"=="AMD64" (
"%SystemRoot%Sysnativecscript.exe" %*
) else (
"%SystemRoot%System32cscript.exe" %*
)
Puede descargar un archivo listo para usar con todos los archivos necesarios de nuestro sitio web: OfficeRemova-OffScrubl.zip (1.4 MB)
Scripts de eliminación de Office
Utilidad de eliminación de Office 2003
El comando para iniciar manualmente la secuencia de comandos para la eliminación completa de los componentes de Office 2003 de la computadora tiene este aspecto:
Cscript.exe "%OFFICEREMOVE%2003OffScrub03.vbs” ALL /Quiet /NoCancel /Force /OSE
Si la tarea de desinstalación se ejecuta como una tarea de SCCM, el programa de desinstalación puede tener el siguiente aspecto:
"%SystemRoot%System32cmd.exe" /C "NativeCScript.cmd //B //NoLogo "2003OffScrub03.vbs" ALL /Quiet /NoCancel /Force /OSE"
Utilidad de eliminación de Office 2007
El comando para eliminar completamente los componentes de Office 2007:
Cscript.exe "%OFFICEREMOVE%2007OffScrub07.vbs” ALL /Quiet /NoCancel /Force /OSE
Para ejecutar el script usando la tarea SCCM:
"%SystemRoot%System32cmd.exe" /C "NativeCScript.cmd //B //NoLogo "2007OffScrub07.vbs" ALL /Quiet /NoCancel /Force /OSE"
Utilidad de eliminación de Office 2010
El comando para desinstalar completamente Microsoft Office 2010:
Cscript.exe "%OFFICEREMOVE%2010OffScrub10.vbs” ALL /Quiet /NoCancel /Force /OSE
Cuando se ejecuta en Configuration Manager:
"%SystemRoot%System32cmd.exe" /C "NativeCScript.cmd //B //NoLogo "2010OffScrub10.vbs" ALL /Quiet /NoCancel /Force /OSE"
Utilidad de eliminación de Office 2013
El comando para eliminar completamente los productos MSI de Office 2013:
Cscript.exe "%OFFICEREMOVE%2013OffScrub_O15msi.vbs” ALL /Quiet /NoCancel /Force /OSE
Para ejecutar el script usando la tarea SCCM:
"%SystemRoot%System32cmd.exe" /C "NativeCScript.cmd //B //NoLogo "2013OffScrub_O15msi.vbs" ALL /Quiet /NoCancel /Force /OSE"
Utilidad de eliminación de Office 2016
El comando para ejecutar el script OffScrub para la eliminación completa de los productos MSI de Office 2016 en la computadora actual
Cscript.exe "%OFFICEREMOVE%2016OffScrub_O16msi.vbs” ALL /Quiet /NoCancel /Force /OSE
Puede ejecutar la desinstalación de Office 2016 desde el paquete SCCM usando este comando:
"%SystemRoot%System32cmd.exe" /C "NativeCScript.cmd //B //NoLogo "2016OffScrub_O16msi.vbs" ALL /Quiet /NoCancel /Force /OSE"
Secuencia de comandos para desinstalar Office Click to Run u Office 365
Para quitar Office Click to Run o el paquete Office 365, ejecute este comando:
Cscript.exe "%OFFICEREMOVE%C2ROffScrubc2r.vbs” ALL /Quiet /NoCancel /Force /OSE
Para ejecutar el script usando la tarea SCCM:
"%SystemRoot%System32cmd.exe" /C "NativeCScript.cmd //B //NoLogo "C2ROffScrubc2r.vbs" ALL /Quiet /NoCancel /OSE"
Detección automática de la versión de MS Office
Remove-PreviousOfficeInstalls.ps1 es un script de PowerShell del proyecto Remove-PreviousOfficeInstalls en Git que detecta automáticamente la versión y el estado de activación de MS Office instalado en una computadora y llama a los scripts de OffScrub correspondientes. Con ciertas modificaciones, se puede utilizar en los escenarios de eliminación automática de Office.
Artículos Interesantes
Relacionados:
Contenido