.BAT文件帮助(默默卸载2个路径)

时间:2017-03-13 21:00:23

标签: vbscript command-prompt uninstall gpo

我环顾四周,似乎无法将其与我所做的研究结合起来。

我要创建一个GPO以应用于将从给定系统卸载Malwarebytes 2.0和3.0的工作站。这将允许我们推出企业版。

我的.bat文件中包含的内容是:

@echo off

cd "C:\Program Files (x86)\Malwarebytes Anti-malware\"
unins000.exe /verysilent /suppressmsgboxes /norestart

cd "C:\Program Files\Malwarebytes\Anti-Malware\"
unins000.exe /verysilent /suppressmsgboxes /norestart

但是,我注意到如果上面的一个路径没有退出(1将永远不存在),则会弹出一个带错误的命令提示符。如果可能的话,我根本不想弹出任何盒子。然后,我尝试使用带有错误的vbs完成此操作:

  

编译错误:字符无效

这是脚本:

Dim objShell
Set objShell = WScript.CreateObject( WScript.Shell )
Sub MalwareBytes()
On Error Resume Next
objShell.Run(%ProgramFiles%Malwarebytes Anti-malwareunins000.exe verysilent 
suppressmsgboxes norestart)

objShell.Run(%ProgramFiles(x86)%MalwarebytesAnti-Malwareunins000.exe
verysilent suppressmsgboxes norestart)
End Sub
Set objShell = Nothing

1 个答案:

答案 0 :(得分:2)

如果在尝试去那里之前路径确实存在,那么,检查怎么样?

if exist "C:\Program Files (x86)\Malwarebytes Anti-malware" (
  cd "C:\Program Files (x86)\Malwarebytes Anti-malware"
  unins000.exe /verysilent /suppressmsgboxes /norestart
)

您的VBScript不起作用的原因是您的语法无效。您需要围绕CreateObject()的参数以及命令字符串使用双引号。对于后者,使用嵌套双引号,因为您有包含空格的路径。更不用说检查VBScript中是否实际存在路径会更清晰。