12

I've got this working line of code in Windows Batch

start "" /wait /i "C:\Program Files\Sandboxie\Start.exe" /box:NetBeans /wait "C:\Program Files\NetBeans 7.3\bin\netbeans64.exe"

I would like to run it via VBScript. But I don't know how to pass the path in parameter which has a space inside.

I came up with something like this:

Set objShell = CreateObject("Wscript.Shell")
objShell.Run("C:\Program Files\Sandboxie\Start.exe" /box:NetBeans /wait "C:\Program Files\NetBeans 7.3\bin\netbeans64.exe"), 1, True

But there is an error:

expected: ')'

1
  • Check stack overflow, they may know. There is also a way to call to copy ini files after the exe runs too. Vb is very neat. Commented Feb 22, 2013 at 3:09

2 Answers 2

19

Within a literal string, a single double-quote character is represented by two double-quote characters. So try the following instead:

Set objShell = WScript.CreateObject("WScript.Shell")
objShell.Run """C:\Program Files\Sandboxie\Start.exe"" /box:NetBeans /wait ""C:\Program Files\NetBeans 7.3\bin\netbeans64.exe""", 1, True
Set objShell = Nothing
Sign up to request clarification or add additional context in comments.

Comments

5

I like to use the following system to embed quotes :

strCommand = Quotes("C:\Program Files\Sandboxie\Start.exe") & _
         " /box:NetBeans /wait " &                            _
         Quotes("C:\Program Files\NetBeans 7.3\bin\netbeans64.exe")

Function Quotes(ByVal strValue)
    Quotes = Chr(34) & strValue & Chr(34)
End Function

It's a lot easier to read.

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.