2013-10-30 41 views
0

我確實對我的項目有最後一個問題,我只是看不清楚在這裏發現了什麼問題。運行帶參數的外部程序時出現問題

當我跑我的這個代碼,一切都恰到好處:

Dim p As Process = New Process() 
    With p.StartInfo 
     .WorkingDirectory = Environment.GetEnvironmentVariable("ProgramFiles") & "\rest_of_my_path\" 
     .FileName = "ping" 
     .Arguments = "192.168.0.24" 
     .CreateNoWindow = True 
     .UseShellExecute = False 
     .RedirectStandardOutput = True 
     .RedirectStandardError = True 
    End With 
    p.Start() 

然而,當我運行它,它在運行時得來的錯誤和p.start崩潰()

Dim p As Process = New Process() 
With p.StartInfo 
    .WorkingDirectory = Environment.GetEnvironmentVariable("ProgramFiles") & "\rest_of_my_path\" 
    .FileName = "myextprogram.exe" 
    .Arguments = "-n Unnamed -f file.abc" 
    .CreateNoWindow = True 
    .UseShellExecute = False 
    .RedirectStandardOutput = True 
    .RedirectStandardError = True 
End With 
p.Start() 

我嘗試添加空格,引號,只是將其命名,但總是得到一個異常已被調用的目標拋出。 我相信這是在抱怨路徑。

我幾乎可以肯定它很簡單,但不能把我的手指放在它上面。

任何幫助表示讚賞。

+0

沒有人有想法嗎? – Nick

回答

0

OK,找到了解決......如果有人有興趣...

與其讓

.FileName = "myextprogram.exe" 
.Arguments = "-n Unnamed -f file.abc" 

我現在有

.FileName = "cmd" 
.Arguments = "myextprogram.exe -n Unnamed -f file.abc" 

一切工作爲現在的預期。