VBScript编译错误 - 错误:预期')' - 800A03EE

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VBScript编译错误 - 错误:预期')' - 800A03EE相关的知识,希望对你有一定的参考价值。

我做了一个小的登录脚本,其任务是安装Mimecast Add-in for Outlook

脚本首先检查是否存在插件dll文件,如果是,则采用产品版本。如果版本与我们当前的8.7.4425.0插件匹配,则它执行msi的静默安装。如果addin dll不存在,安装也会执行。

我使用VBSEdit来构建我的脚本,这个脚本完全从调试器运行。它找到add-in版本并执行msi

但是,当我使用cscript执行脚本或从Windows资源管理器双击时,我得到编译错误。

出于诊断目的我正在使用/qb开关来查看msi执行。

代码如下。

Dim mimever 
Dim instcmd 
Dim exist 
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objShell = CreateObject("Wscript.shell")
exist = 0
instcmd = "cmd /c start /wait msiexec /i " & Chr(34) & "\server-01ictSoftwareMimecastMSO 7.4Mimecast for Outlook 7.4.2183.20730 (64 bit).msi" & Chr(34) & " ALLUSERS=1" & " /qb /norestart"

if objFSO.FileExists("C:Program FilesMimecastMimecast Outlook Add-Inadxloader64.dll") then
    exist = 1
End if

If exist = 1 then
    mimever = objFSO.GetFileVersion("C:Program FilesMimecastMimecast Outlook Add-Inadxloader64.dll") 
        if mimever = null then 
            mimever = 0
        End if
End if

if mimever <> "8.7.4425.0" Or exist = 0 then
    ObjShell.Run instcmd
End If

Error screenshot

答案

解决方法是将instcmd变量行更改为:

instcmd = "cmd /c start """" /wait msiexec /i " & Chr(34) & "\server-01ictSoftwareMimecastMSO 7.4Mimecast for Outlook 7.4.2183.20730 (64 bit).msi" & Chr(34) & " ALLUSERS=1" & " /qb /norestart"

以上是关于VBScript编译错误 - 错误:预期')' - 800A03EE的主要内容,如果未能解决你的问题,请参考以下文章

Microsoft VBScript 编译器错误 错误 '800a03ea'

Microsoft VBScript 编译器错误 错误 '800a03fb'

Microsoft VBScript 编译器错误 错误 '800a03ee' 缺少 ')' 这个出错,SQL代码如下,请问怎么解决?

Xcode: 错误:对于函数式的转换或类型构造,预期'('。

Microsoft VBScript 编译器错误 错误原因 代码大全

VBScript 上的错误处理:不抛出错误