我正在尝试运行一个VBscript,它运行一个命令行语句,该语句包含cmd行命令中的单词set
。
VBscript将其识别为保留字并给出错误:
预期')'
我试图在VBScript中运行的命令是:
objShell.Run(appcmd set config /section:isapiFilters /-[name='JakartaXAPI'])
如何逃避保留字?
答案 0 :(得分:2)
Microsoft VBScript compilation error: Expected ')'
只是语法错误。
Run
方法要求其第一个参数为string subtype,并且不能为字符串计算以空格分隔的单词序列。您需要将其用引号括起来(" "
)。
Run Method (Windows Script Host)
在新流程中运行程序。
语法
object.Run(strCommand, [intWindowStyle], [bWaitOnReturn])
参数
object
WshShell对象。strCommand
表示要运行的命令行的字符串值。您必须包含要传递给的任何参数 可执行文件。intWindowStyle
可选。整数值,表示程序窗口的外观。请注意,并非所有程序都使用此功能 信息。bWaitOnReturn
可选。布尔值,指示脚本是否应该等待程序之前完成执行 继续执行脚本中的下一个语句。如果设置为true, 脚本执行暂停,直到程序完成,Run返回任何 程序返回的错误代码。如果设置为false(默认值),则 运行方法在启动程序后立即返回, 自动返回0(不被解释为错误代码)。
使用
objShell.Run "appcmd set config /section:isapiFilters /-[name='JakartaXAPI']"
或
appcmd = "path\to\someapp.exe"
objShell.Run appcmd & " set config /section:isapiFilters /-[name='JakartaXAPI']"