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



我已经环顾四周,似乎无法与我所做的研究一起使用。

我将创建一个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 FilesMalwarebytesAnti-Malware"
unins000.exe /verysilent /suppressmsgboxes /norestart

但是,我注意到,如果上述路径之一未退出(1总是不存在),则它会弹出带有错误的命令提示符。如果可能的话,我根本不想弹出盒子。然后,我尝试使用错误:

来完成此操作。

编译错误:无效字符

这就是脚本:

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

,如果在尝试去那里之前的路径实际上存在?

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中也存在。

最新更新