2015-08-30 2 views
1

Я пытаюсь сделать только небольшую программу, которая включает в себя два шага декомпилировать и начать с файла .java. Я не могу запустить файл .bat правильно, потому что DOS не принимает пробелы, как я хочу.Пакетный запуск с параметрами Ошибка

Вот мой код:

Process.Start("cmd.exe", "/c start "" """ & TextBoxJavacPath.Text & _ 
"""" & " " & """" & TextBoxFile.Text & """") 

Это строка, которая выходит: (это правильно)

/c "C:\Program Files\Java\jdk1.8.0_60\bin\javac.exe" 
"C:\Users\Niklas\Desktop\Java\Kap06\src\eingabe\LetsReadLine.java" 

Если я ввожу его, набрав в консоли он работает, но через vb.net это не работает.

The Program with input

Ошибка заключается в следующем: The command "C:/Program" is written incorrect or couldn't be found.

ответ

0

Попробуйте использовать этот код (я не знаю, если это будет работать):

Private Sub Start(javacPath As String, file As String) 
    Using p As New Process With { 
     .StartInfo = New ProcessStartInfo With { 
      .WorkingDirectory = Path.GetDirectoryName(javacPath), 
      .Arguments = "/c """ & Path.GetFileName(javacPath) & """ """ & file, 
      .FileName = "cmd", 
      .CreateNoWindow = True}} 
     p.Start() 
    End Using 
End Sub 

и вызвать метод, как это :

Start(TextBoxJavacPath.Text, TextBoxFile.Text) 

Я не могу проверить код, потому что я не знаю, t есть .java файл ...

+0

Спасибо большое! Оно работает! –

+0

@NiklasTeichert Добро пожаловать! Не забывайте поднимать и отмечать ответ как лучший ответ;) – Drarig29