Ausgeführt werden die Kommandozeilen von c# mit den Parametern?

Es ist möglich, ausführen Kommandozeile in c# durch die Verwendung von so etwas wie dieses :

process = new Process();
process.StartInfo.FileName = command;
process.Start();

Ist das problem wenn der Befehl ein string-Parameter enthält, zum Beispiel:

C:\My Dir\MyFile.exe MyParam1 MyParam2

Funktioniert das nicht und ich sehe nicht, wie das extrahieren der Parameter aus diesem string ein und setzen Sie es auf die process.Arguments Eigenschaft? Der Pfad und der Dateiname könnte etwas anderes sein, die Datei nicht zu Ende mit exe.

Wie kann ich dieses Problem lösen?

  • Die Frage ist also, wie kann ich das aufteilen einer Befehlszeile in eine FileName und Arguments.
  • Klingt wie Sie wollen, einen regulären Ausdruck zu finden, der break-Punkt. Streng genommen, wenn der Dateiname ein Leerzeichen enthält, sollte in Anführungszeichen gesetzt werden. Das würde die u helfen, eine Menge. Ist dies der Fall in deinem Beispiel ist der Dateiname C:\\My oder C:\\My Dir\MyFile.exe? Übrigens, ist, dass M entkommen?
  • Tun, die Datei endet mit einem Punkt und jede Erweiterung? zB .com .exe...
InformationsquelleAutor Banshee | 2011-05-11
Schreibe einen Kommentar