将带参数的shellExecute命令输出写入VBScript中的日志文件

时间:2016-08-15 11:50:54

标签: vbscript

我已经尝试了许多事情来实现这一目标,但我还没有以我想要的方式取得成功。 我有一个hta应用程序,它从复选框中收集参数,然后运行一个cmd文件,在那里传递这些参数。 如果选中日志复选框,我想创建该进程的日志文件而不创建任何新的包装文件。

我的逻辑是用另一个参数运行一个脚本,并将参数重定向作为参数。我无法正确使用语法(或者甚至可以在同一个文件中使用)。我的简化代码:

test3
显然,这不起作用,但至少显示了我想要实现的目标。

1 个答案:

答案 0 :(得分:1)

要在VBScript中连接字符串,请使用&运算符。 +运算符仅用于数字加法。

Sub RunCmd
    dim shell, ARGS

    set shell = createobject("Shell.Application")
    ARGS = ""

    if checkbox1.checked then ARGS = ARGS & " Do_This"
    if checkbox2.checked then ARGS = ARGS & " Do_That"
    if logFile.checked then ARGS = ARGS & ARGS " > publishLog.log"

    ' ShellExecute(sFile, [vArgs], [vDirectory], [vOperation], [vShow])
    ' https://msdn.microsoft.com/en-us/library/windows/desktop/gg537745(v=vs.85).aspx

    shell.shellExecute "gui.cmd", ARGS, , "runas", 1
End Sub