【问题标题】:How can I start a vbs script from VB.Net and pass arguments to the vb script started如何从 VB.Net 启动 vbs 脚本并将参数传递给启动的 vb 脚本
【发布时间】:2016-09-16 22:00:08
【问题描述】:

我需要从 Visual Basic 应用程序执行类似“cscript OSPP.vbs /dstatus”的命令。我正在使用下面的代码,但我无法将参数“dstatus”传输到 OSPP.vbs。我怎么能那样做?任何帮助

    Dim start As New ProcessStartInfo
    Dim task As New Process
    Dim so As IO.StreamReader

    start.FileName = "C:\WINDOWS\system32\cscript.exe"
    start.Arguments = """C:\Program Files (x86)\Microsoft Office\Office15\OSPP.vbs /dstatus"""

    start.UseShellExecute = False
    start.RedirectStandardOutput = True
    start.RedirectStandardError = False        

    task.StartInfo = start
    task.Start()
    so = task.StandardOutput
    task.WaitForExit()
    MsgBox(so.ReadToEnd)

【问题讨论】:

    标签: vb.net string process arguments wsh


    【解决方案1】:

    您的参数格式不正确,因为路径有空格,您需要将其括在双引号之间。

    试试这个:

    Dim args as string =
         String.Format("""{0}"" ""{1}""", 
                       "C:\Program Files (x86)\Microsoft Office\Office15\OSPP.vbs", 
                       "/dstatus") 
    
    start.FileName = "C:\WINDOWS\system32\cscript.exe"
    start.Arguments = args
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-08-06
      • 1970-01-01
      • 2015-05-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多