Computer >> Hướng Dẫn Máy Tính >  >> Phần Mềm >> Office

Cách gỡ cài đặt tự động tất cả phiên bản Office trước đó bằng script OffScrub

Để giải quyết vấn đề cập nhật hàng loạt MS Office lên phiên bản mới nhất trên tất cả máy tính người dùng (Office 2016 nên được triển khai qua SCCM và kích hoạt trên KMS server Office 2016), chúng ta cần phát triển một script đơn giản để tự động và chính xác gỡ cài đặt bất kỳ phiên bản Microsoft Office đã cài đặt trước đó. Script này nên được sử dụng trong các tác vụ gỡ cài đặt / cài đặt tự động Office bằng gói SCCM.

Trước khi cài đặt phiên bản Office mới, khuyến khích gỡ bỏ bất kỳ phiên bản MS Office đã cài đặt trước đó (việc sử dụng đồng thời nhiều phiên bản Office trên một máy tính được hỗ trợ, nhưng không khuyến khích do các vấn đề tiềm ẩn). Do đó, có nhu cầu phát triển một script gỡ cài đặt chính xác bất kỳ phiên bản Office nào đã cài đặt trước đó trên PC.

Script VBS OffScrub

Sau khi xem xét một số cách gỡ cài đặt phiên bản Office trước đó, chúng ta dừng lại ở việc sử dụng script OffScrub từ dịch vụ Microsoft Premier Support. OffScrub scripts được bao gồm trong gói EasyFix chính thức. (Gói gỡ cài đặt ép buộc Office 2007 và 2010 nếu không thể gỡ từ Control Panel.) Để gỡ Office 2013 và 2016, một công cụ khác được sử dụng, gói O15CTRRemove.diagcab, cũng chứa các script OffScrub (xem lưu ý dưới).

OffScrub là một tập hợp script VBS để gỡ cài đặt tự động các sản phẩm Office. Các script này cho phép bạn dọn dẹp hoàn toàn hệ thống khỏi các thành phần Office đã cài đặt trước đó, bất kể khả năng hoạt động hiện tại của nó. Dưới đây là các lợi ích chính của việc sử dụng Offscrub để gỡ cài đặt Office:

  1. Khả năng gỡ cài đặt phiên bản Office cũ ngay cả khi không có hoặc file cài đặt gốc / cache Office bị hỏng.
  2. Khóa registry của người dùng không bị ảnh hưởng.
  3. Gỡ cài đặt Office hoàn toàn.
  4. Xóa tất cả cài đặt lỗi thời và tất cả sản phẩm (bao gồm Project, Visio, Visio Viewer).

Script Remove-PreviousOfficeInstalls.ps1 từ gói O15CTRRemove.diagcab cho phép phát hiện phiên bản Office đã cài đặt và gọi Offscrub*.vbs cho phiên bản Office tương ứng.

Trước hết, tải xuống FixIt từ trang web chính thức Microsoft cho các phiên bản Office và Windows bạn đang sử dụng trong cơ sở hạ tầng. Bạn có thể tải gói O15CTRRemove.diagcab cho các phiên bản Office và Windows khác nhau từ trang này (https://support.microsoft.com/en-us/kb/971179).

Lưu ý quan trọng! Trước đây trên trang này có liên kết đến cả gói EasyFix và O15CTRRemove.diagcab. Hiện tại, chỉ có liên kết đến gói chung O15CTRRemove.diagcab, có thể dùng để gỡ Office 2013/2016 trên Window 7 SP1, Windows 8.1 và Windows 10. Cũng, đầu năm nay script Offscrub cho phiên bản Office mới nằm trong O15CTRRemove.diagcab, và bây giờ chỉ còn script PowerShell trong đó. Các (và những) script Offscrub VBS này hiện chỉ có thể lấy từ kho lưu trữ chính thức của nhà phát triển Office trên GitHub (OfficeDev).

Trong bảng sau tôi đã tổng hợp các liên kết đến gói Microsoft để gỡ các phiên bản Office khác nhau trên các phiên bản OS khác nhau.

Phiên bản Office Windows 7 Windows 8 Windows 10
Office 2003 MicrosoftFixit20054.mini.diagcab Không
Office 2007 MicrosoftFixit20052.mini.diagcab Không
Office 2010 MicrosoftFixit20055.mini.diagcab
Office 2013 File OffScrub_O15msi.vbs trên GitHub
Office 2016 File OffScrub_O16msi.vbs trên GitHub
Office 365/ Click-To-Run File OffScrubc2r.vbs trên GitHub

Cách gỡ cài đặt tự động tất cả phiên bản Office trước đó bằng script OffScrub

Tải xuống các file này và lưu chúng vào C:\tools\OfficeUninstall. File *.diagcab là kho lưu trữ phổ biến ở định dạng CAB, và bạn có thể giải nén chúng bằng lệnh expand.

Để thuận tiện hơn, hãy tạo thư mục riêng cho từng phiên bản Office:

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

Chỉ giải nén file VBS từ các kho diagcab đã tải xuống.

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"

Và sao chép file VBS cho các phiên bản Office mới hơn tải từ GitHub vào cùng thư mục.

move /y "%OFFICEREMOVE%\OffScrub_O15msi.vbs" "%OFFICEREMOVE%\2013"
move /y "%OFFICEREMOVE%\OffScrub_O16msi.vbs" "%OFFICEREMOVE%\2016"
move /y "%OFFICEREMOVE%\OffScrubc2r.vbs" "%OFFICEREMOVE%\O365"

Cách gỡ cài đặt tự động tất cả phiên bản Office trước đó bằng script OffScrub

Vậy chúng ta có các file VBS sau:

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

Bạn có thể lấy danh sách các tham số có sẵn cho bất kỳ script OffScrub VBS nào như sau:

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]

Cách gỡ cài đặt tự động tất cả phiên bản Office trước đó bằng script OffScrub

Chạy script VBS OffScrub bằng SCCM

Để script gỡ cài đặt Office hoạt động chính xác trên Windows x64 nếu chạy bởi client Configuration Manager 32-bit, bạn nên chạy phiên bản cscript.exe tương ứng. Vì vậy để chạy kịch bản trên hệ thống 64-bit, bạn cần chạy cscript.exe từ C:\Windows\SysWOW64.

Bạn có thể đạt được điều này bằng script NativeCScript.cmd:

@echo off
if "%PROCESSOR_ARCHITEW6432%"=="AMD64" (
"%SystemRoot%\Sysnative\cscript.exe" %*
) else (
"%SystemRoot%\System32\cscript.exe" %*
)

Bạn có thể tải xuống kho lưu trữ sẵn sàng sử dụng với tất cả file cần thiết từ trang web của chúng tôi: OfficeRemova-OffScrubl.zip (1.4 MB)

Script gỡ cài đặt Office

Tiện ích gỡ cài đặt Office 2003

Lệnh để thủ công chạy script để gỡ cài đặt hoàn toàn các thành phần Office 2003 khỏi máy tính trông như sau:

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

Cách gỡ cài đặt tự động tất cả phiên bản Office trước đó bằng script OffScrub

Nếu tác vụ gỡ cài đặt chạy như tác vụ SCCM, chương trình gỡ cài đặt có thể trông như sau:

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

Tiện ích gỡ cài đặt Office 2007

Lệnh để gỡ cài đặt hoàn toàn các thành phần Office 2007:

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

Để chạy script bằng tác vụ SCCM:

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

Tiện ích gỡ cài đặt Office 2010

Lệnh để gỡ cài đặt hoàn toàn Microsoft Office 2010:

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

Khi chạy trong Configuration Manager:

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

Tiện ích gỡ cài đặt Office 2013

Lệnh để gỡ cài đặt hoàn toàn sản phẩm Office 2013 MSI:

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

Để chạy script bằng tác vụ SCCM:

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

Tiện ích gỡ cài đặt Office 2016

Lệnh để chạy script OffScrub để gỡ cài đặt hoàn toàn sản phẩm Office 2016 MSI trên máy tính hiện tại:

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

Bạn có thể chạy gỡ cài đặt Office 2016 từ gói SCCM bằng lệnh này:

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

Script gỡ cài đặt Office Click to Run hoặc Office 365

Để gỡ cài đặt gói Office Click to Run hoặc Office 365, chạy lệnh này:

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

Để chạy script bằng tác vụ SCCM:

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

Tự động phát hiện phiên bản MS Office

Remove-PreviousOfficeInstalls.ps1 là script PowerShell từ dự án Remove-PreviousOfficeInstalls trên Git tự động phát hiện phiên bản và trạng thái kích hoạt của MS Office đã cài đặt trên máy tính và gọi script OffScrub tương ứng. Với một số sửa đổi, nó có thể được sử dụng trong các kịch bản gỡ cài đặt Office tự động.