Hallo!
Meine Frage ist, ob man in C# ähnlich wie in JAVA externe Prozesse(z.B: *.exe-Dateien) starten kann?
Wenn ja:
System.Diagnostics.Process.Start("iexplore.exe");
Für Windowsdienste kannst Du Dir mal die Klasse ServiceController anschauen.
Wie sieht es aus wenn ich ein Programm starten möchte das aus mehreren Wörtern besteht und diese mit Leerzeichen getrennt sind, z.B System.Diagnostics.Process.Start("Ein Programm.exe"); kann ich so nicht starten.
Hi!
Versuch es mal so:
System.Diagnostics.Process.Start("Ein\ Programm.exe");
Du musst das Leerzeichen quoten, ansonsten wird nämlich "Programm.exe" als Parameter von "Ein" behandelt.
Code-Hacker
Hi!
Dabei krieg ich aber von Visual Studio folgende Fehlermeldung "Nicht erkannte Escape-Folge"!
Original von Code-Hacker
Hi!Versuch es mal so:
System.Diagnostics.Process.Start("Ein\ Programm.exe");
Du musst das Leerzeichen quoten, ansonsten wird nämlich "Programm.exe" als Parameter von "Ein" behandelt.
Code-Hacker
System.Diagnostics.Process.Start(@"C:\DeinPfad\Deine Anwendung.exe");
Das hättest Du aber auch selbst rausfinden können. 😉
Hi!
Mein Gott ist das ein Schrott. Naja, die Eingabeaufforderung von Windows bzw. DOS kann man allgemein knicken, mal abgesehen davon das Verzeichnisse mit einem Backslash getrennt werden....
Code-Hacker
Hallo!
Moment mal, iregendwie ist hier was durcheinnander gekommen, die Frage war wieso ich eine Fehlermeldung kriege beim Aufruf von
System.Diagnostics.Process.Start("Ein\ Programm.exe");
Ich möchte ja kein Pfad angeben!
Hi!
Weil du ein Leerzeichen nicht quoten kannst, es müsste glaube ich so aussehen:
"Mein\ Programm.exe"
Dann bekommt die Eingabeaufforderung ein \ übergeben, dann funktionierts evtl. Also wenn ich in der Eingabeaufforderung in einen Ordner mit Leerzeichen wechsel und ausnahmsweise mal kein * benutze, weil der Name zu lang ist, wird muss das auch mit einem \ gequoted werden.
Code-Hacker