Forum: Win32/Win64 API (native code)
by Assarbad,
31. Okt 2010
Es wäre schön, wenn du einfach mal das machen würdest, was wir schreiben ;)
Und hier hat niemand "cmd" oder "java" geschrieben. Auch beim SwissDelphiCenter ist das Beispiel mit cmd.exe und ich habe auch ganz klar java.exe geschrieben. Wenn das bei ShellExecute und ShellExecuteEx geht, ist das ja ne feine Sache, aber man mag es kaum glauben, CreateProcess gehorcht anderen Regeln.
Ach ja und:...
Forum: Win32/Win64 API (native code)
by Assarbad,
29. Okt 2010
Un ob das hilft. Wie Bernhard schon sagte, solltest du ganz einfach nur java.exe mit den o.g. Argumenten aufrufen. Zugegeben, eventuell mußt du noch in der Registry ermitteln wo dein JRE installiert ist und die java.exe zu finden ist (sollte sie nicht im gleichen Verzeichnis liegen), aber das ist trivial.
Forum: Win32/Win64 API (native code)
by Assarbad,
27. Okt 2010
Hmm, irgendwie hast du meine Fragen sehr elegant umschifft.
Forum: Win32/Win64 API (native code)
by Assarbad,
27. Okt 2010
Ich hatte ernste Probleme das zu parsen. Muß wohl mal meinen Deutsch-Sprachprozessor überprüfen lassen.
Die Frage wäre dann jetzt wie das Java-Programm gestartet wird. Per start/cmd.exe? Also in einer anderen Konsole? Oder in der gleichen Konsole? Denn eins ist klar, mit der o.g. Methode kannst du nur innerhalb der von dir gestarteten Konsole Ausgaben abfangen und Eingaben tätigen.
Forum: Win32/Win64 API (native code)
by Assarbad,
26. Okt 2010
Das kommt drauf an. Wenn du mit CreateProcess (et al.) die BAT-Datei ausführst (also implizit via cmd.exe), kannst du bei der Prozesserstellung Pipes anstelle der Standardein-/ausgabekanäle angeben. Und von denen kann man natürlich lesen was ansonsten auf der Konsole landen würde.
Aus meiner Delphi-Zeit von vor 2006 erinnere ich mich aber an Komponenten die versprachen das ranpappen der Pipes...