2013-08-07 54 views
0

的不是價值,我需要在C運行CMD窗口中輸入以下命令:\ Program Files文件\ CONNECTION爲什麼CMD窗口獲取參數名稱和參數

connect "user_vip" 

這麼寫短VB腳本,執行此操作

Dim oShell 
Set oShell = WScript.CreateObject ("WScript.Shell") 
USERC = """user_vip""" 
Wscript.Echo USERC 
oShell.run "cmd /k CD C:\Program Files\CONNECTION & connect USERC " ,1 , true 

後,我運行VB腳本我看到CMD窗口下面

connect USERC 

,而不是的I期望看到:

connect "user_vip" 

爲什麼用戶C參數oShell.run沒有得到真正的價值 - 「user_vip」

  • 句話 - Wscript.Echo用戶C實際打印的價值 - 「user_vip」如我所料
+0

敢肯定你需要的,因爲它包含空格引用路徑 –

+0

如何:爲 - 連接「用戶C」 - 這個錯誤的原因(statment的預期完)? – maihabunash

+0

我嘗試配置爲USERC =「」「」「user_vip」「」「」或USERC =「」「user_vip」「」等...或「USERC」..不適用 - :( – maihabunash

回答

3

VBScript不插變量的內容轉換爲字符串文字和包含空格/空間在shell命令需要路徑引號(」轉義爲 「」),以便改變

oShell.run "cmd /k CD C:\Program Files\CONNECTION & connect USERC " ,1 , true 

oShell.run "cmd /k CD ""C:\Program Files\CONNECTION"" & connect " & USERC, 1, True 

更新WRT評論:

>> userc = "abc" 
>> WScript.Echo "cmd /k CD ""C:\Program Files\CONNECTION"" & connect " & USERC 
>> 
cmd /k CD "C:\Program Files\CONNECTION" & connect abc 
+0

不能正常工作_因爲字符連接後的字符(我得到預期的結束語) – maihabunash