您的位置:首页 > 编程语言 > VB

VBScript:批量删除Office 2003 推荐

2010-08-07 16:08 197 查看
这是上周二写的脚本,由于Office 2003版权的问题,不得不在一周内删除完约800台PC上的Office 2003专业版和标准版(当时安装时未统一标准,且未通过AD进行发布),并且安装上Open Office.org 3.2 。

先贴脚本的代码,然后简要的描述一下批量删除Office的过程。

'*************************************************************
' Script: Office 2003 Unistall Script (Office 2003 Pro & Std)
' Last Modified : 2010-08-03
' Version: 1.0
'*************************************************************

Const HKLM       = &H80000002
Const strKeyPath = "Software\Microsoft\Windows\CurrentVersion\Uninstall\"

strComputer      = "."
Set Wshell       = CreateObject("Wscript.Shell")
Set objReg       = GetObject("winmgmts://" & strComputer & "/root/default:StdRegProv")
objReg.EnumKey HKLM, strKeyPath,arrSubKeys

For Each strSubKey In arrSubKeys
intRet = objReg.GetStringValue(HKLM, strKeyPath & strSubKey,"DisplayName",strValue)

If strValue <> "" And intRet = 0 And inStr(1,strValue,"Office Professional Edition 2003",1) >0 Then
Wshell.Run("MsiExec.Exe /x {90110804-6000-11D3-8CFE-0150048383C9} /qn REBOOT=ReallySuppress")
ElseIf strValue <> "" And intRet = 0 And inStr(1,strValue,"Office Standard Edition 2003",1) >0 Then
wshell.Run("MsiExec.Exe /x {90120804-6000-11D3-8CFE-0150048383C9} /qn REBOOT=ReallySuppress")
End If
Next

'The end


以上脚本通过查找计算机上的软件安装列表,如果软件列表名称中包含Office Professional Edition 2003或Office Standard Edition 2003,则分别执行不同的卸载命令。

MsiExec这个命令相信大家都比较熟悉了,这里使用是/X的开关,通过软件的GUID进行卸,Office 2003 Pro和Std的GUID有些许差别(就差一个数字)。

脚本的问题解决后,即将面临一个新的问题,因为执行该脚本需要具备本地管理员权限的账号才可以执行,倘若一台台的PC去执行这个脚本,该脚本也就失去了意思。

怎么办?

我使用的是PSTools工具套件中的Psexec。

首先,写一个BAT或CMD的批处理文件,内容如下:

@Echo off

SET VCSite=%computername:~0,2%

echo y| xcopy \\%VCSite%IT240\c$\Script\bin\Uninoffice.vbs c:\windows\system32

Uninoffice.vbs

该批处理的用途是,将Office脚本复制到目的计算机之后,再执行该脚本。

随意找一台PC机(需修改上述批处理文件中的PC机名相同),使用具有本地管理员权限的账号下登录,运行以下命令行

psexec @pclist.txt -u administrator -p xxxxxxx -c c:\script\bin\uninoffice.cmd

pclist.txt中包含你要执行Office 2003 卸载的计算机列表。

测试结果:五分钟内可完成50台PC的Office 2003卸载任务。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐