2010-12-13 15 views
0

Geben Code war ein Teil des Codes zum Ausführen einer JAR-Datei in C# Umgebung. Complete CodeFühren Sie Jar-Datei von C#

strArguments = " -jar "+ Argument list;   
processJar.StartInfo.FileName = "\"" + @"java" + "\""; 
processJar.StartInfo.Arguments = strArguments; 
processJar.StartInfo.WorkingDirectory =; \\Give the working directory of the application; 
processJar.StartInfo.UseShellExecute = false; 
processJar.StartInfo.RedirectStandardOutput = true; 

Ich weiß, dass processJar.StartInfo.FileName die jave.exe enthalten sollte, so dass die entsprechende Datei wird ausgelöst, wenn der Prozess gestartet wird. Aber der oben angegebene Code läuft auch erfolgreich.

Frage: Was bedeutet "\" "@ java" + "\" " hier? Wenn ich solche Eingaben zur Verfügung stelle, sucht das System selbst nach java.exe?

Antwort

2

Sie einfach sicher, dass die Zeichenfolge "java" sein wird (mit Anführungszeichen).

Dies ist normalerweise erforderlich, wenn Sie einen Pfad mit Leerzeichen haben.

Windows erfordert den Pfad in Anführungszeichen, wenn Leerzeichen enthalten sind (z. B. "C:\Program Files").

Wie zum Suchen der ausführbaren Datei - wenn der Pfad zur ausführbaren Java-Datei in der Umgebungsvariablen %PATH% ist, wird es gefunden.

In diesem Fall scheinen sie überflüssig.

+0

Ok! Wenn ich die Umgebungsvariable% PATH% richtig gesetzt habe, muss ich mich nicht um die Datei java.exe kümmern, wenn ich mit JAR-Dateien arbeite? –

+0

@ Sri Kumar - richtig. – Oded

0

sein die EXE-Namen, die

gestartet werden muss
+0

Gut! Ich weiß es, aber woher weiß das System, wo meine exe ist? Ich spreche hier über den Dateipfad –