vb.net Jak przekazać ciąg znaków ze spacjami do linii poleceń
Próbuję wywołać zewnętrzny program za pomocą procesu:
Dim strExe As String = "E:\Projects\Common Files\mktorrent.exe"
Dim p As New Process
Dim pinfo As New ProcessStartInfo
pinfo.UseShellExecute = False
pinfo.RedirectStandardOutput = True
pinfo.Arguments = " -a http://blah.com/announce.php -l " & FileSizeMarker & " " & fn
pinfo.FileName = strExe
pinfo.WorkingDirectory = fn.Substring(0, fn.LastIndexOf("\"))
pinfo.WindowStyle = ProcessWindowStyle.Normal
pinfo.CreateNoWindow = True
p.StartInfo = pinfo
p.Start()
Problem dotyczy nazwy pliku (zmienna fn powyżej). Jeśli ma spacje, dławienie poleceń - bez spacji, działa dobrze. Próbowałem dodać 1, 2 lub 3 cytaty, jak poniżej:
fn = Chr(34) & Chr(34) & Chr(34) & fn & Chr(34) & Chr(34) & Chr(34)
i również
fn = "\") & Chr(34) & fn & "\"& Chr(34)
i wiele innych kombinacji, ale wciąż daje mi błąd. Jakieś przemyślenia na temat tego, jak mogę to uruchomić? TIA