buongiorno,
sto tentando di lanciare da una applicazione console application VB.NET, un eseguibile che prende alcuni parametri in ingresso usando il metodo System.Diagnostics.Process.Start in questo modo:
codice:
Dim strProcess As String = "c:\applicazione.exe parametro1 parametro2 parametro3"

Dim myProcess As Process = System.Diagnostics.Process.Start(strProcess)
e fin qui tutto bene.

Il problema nasce quando, a runtime, viene generata la seguente eccezione:
codice:
Lanciata Eccezione System.ComponentModel.Win32Exception nel debugger:
Impossibile trovare il file specificato
StartWithShellExecuteEx()
Start()
Start()
Start()
AvviaClick()
OnClick()
OnClick()
OnMouseUp()
WmMouseUp()
WndProc()
WndProc()
WndProc()
OnMessage()
WndProc()
DebuggableCallback()
System.Windows.Forms.UnsafeNativeMethods.IMsoComponentManager.FPushMessageLoop()
RunMessageLoopInner()
RunMessageLoop()
Run()
OnRun()
DoApplicationModel()
Run()
Main()
che sembra dipendere dal fatto che la stringa
codice:
strProcess
contiene degli spazi visto che, se imposto la variabile
codice:
Dim strProcess As String = "c:\applicazione.exe"
non ci sono piu' problemi.
La domanda e': come si puo' evitare che il carattere spazio usato per la separazione dei parametri dia questo problema? Ho anche provato a cercare dei caratteri di escape da usare ma ho trovato solo esempi senza spazi.
Saluti e grazie anticipatamente.