Hallo,
ich habe folgendes Problem, bei dem ich trotz intensiver Websuche nicht weiterkomme und hoffe, dass mir jemand in diesem Forum vielleicht einen Tipp geben kann.
Ich möchte gerne von Java aus ein Windows-Programm aufrufen udn dabei Parameter übergeben, die dieses aufgerufene Programm verwenden soll. Dazu habe ich folgendes Programm geschrieben:
Der Inhalt von batchjob.bat ist folgender:
echo "Im Folgenden die Aufrufparameter:" >> c:\testdir\log.txt
echo %1% >> c:\testdir\log.txt
Wenn ich nun das Programm aufrufe (java -jar DasErzeugteProgramm.jar), enthält die Ausgabedatei c:\testdir\log.txt nur die erste echo-Ausgabe, d.h.
Im Folgenden die Aufrufparameter:
Lasse ich in der batchjob.bat jedoch den absoluten Pfad bei der Ausgabeumleitung weg:
echo "Im Folgenden die Aufrufparameter:" >> log.txt
echo %1% >> log.txt
... so wird die Datei log.txt im Arbeitsverzeichnis korrekt geschrieben. D.h. sie hat den Inhalt
"Im Folgenden die Aufrufparameter:"
einArgument
Was passiert da? Kann das Argument nicht gelesen werden, wenn dieses in eine Datei mit absoluter Pfadangabe geschrieben werden soll?? ???:L
Und wenn das so ist, kann man das in den Policys irgendwo freischalten?
Zum Hintergrund: Ich habe es mit Java 1.6u21 und Java 1.7u7 auf Win XP ausprobiert. Das Verhalten war stets das gleiche.
Ich würde mich freuen, wenn mir jemand einen Hinweis geben könnte.
Gruß,
Stefan
ich habe folgendes Problem, bei dem ich trotz intensiver Websuche nicht weiterkomme und hoffe, dass mir jemand in diesem Forum vielleicht einen Tipp geben kann.
Ich möchte gerne von Java aus ein Windows-Programm aufrufen udn dabei Parameter übergeben, die dieses aufgerufene Programm verwenden soll. Dazu habe ich folgendes Programm geschrieben:
Java:
public static void main(String[] args) {
try {
Process pr = Runtime.getRuntime().exec("C:\\testdir\\batchjob.bat einArgument");
pr.waitFor();
} catch (Exception ex) {
}
}
Der Inhalt von batchjob.bat ist folgender:
echo "Im Folgenden die Aufrufparameter:" >> c:\testdir\log.txt
echo %1% >> c:\testdir\log.txt
Wenn ich nun das Programm aufrufe (java -jar DasErzeugteProgramm.jar), enthält die Ausgabedatei c:\testdir\log.txt nur die erste echo-Ausgabe, d.h.
Im Folgenden die Aufrufparameter:
Lasse ich in der batchjob.bat jedoch den absoluten Pfad bei der Ausgabeumleitung weg:
echo "Im Folgenden die Aufrufparameter:" >> log.txt
echo %1% >> log.txt
... so wird die Datei log.txt im Arbeitsverzeichnis korrekt geschrieben. D.h. sie hat den Inhalt
"Im Folgenden die Aufrufparameter:"
einArgument
Was passiert da? Kann das Argument nicht gelesen werden, wenn dieses in eine Datei mit absoluter Pfadangabe geschrieben werden soll?? ???:L
Und wenn das so ist, kann man das in den Policys irgendwo freischalten?
Zum Hintergrund: Ich habe es mit Java 1.6u21 und Java 1.7u7 auf Win XP ausprobiert. Das Verhalten war stets das gleiche.
Ich würde mich freuen, wenn mir jemand einen Hinweis geben könnte.
Gruß,
Stefan
Zuletzt bearbeitet: