Hallo!
Ich habe schon viel gesucht und einiges gefunden.
Und zwar möchte ich, dass ich mit meinem Delphiprogramm eine Anwendung starte und deren Output auslese, damit ich diesen in meiner Anwendung als String verarbeiten kann.
Man kann sich das so vorstellen, dass ich ein
GUI für eine console-only-application bauen möchte.
Fündig bin ich bereits hier geworden:
http://www.delphipraxis.net/internal...ct.php?t=58475
Ich kann auf Knopfdruck Daten an die Konsole senden.
Nur leider habe ich es nicht hinbekommen, dass dieses command auch ausgeführt wird. Die Konsole zeigt mir genau das, was ich ihr sende, passieren tut aber nichts.
Gibt es eine Möglichkeit, das ohne größere aufwände (extra frameworks, addons, etc) hinzukriegen?
Mein bisheriger Codeschnipsel:
Delphi-Quellcode:
procedure TForm1.compileClick(Sender: TObject);
var
hIn: THandle;
hOut: THandle;
c: char;
iRead, iWritten: cardinal;
s: string;
begin
opusage.Caption := 'Das Fenster wird nun für die Konsolenausgabe benutzt';
clearlog.Enabled := true;
resetqcfile.Enabled := false;
toclipboard.Enabled := true;
AllocConsole;
hIn := GetStdHandle(STD_INPUT_HANDLE);
hOut := GetStdHandle(STD_OUTPUT_HANDLE);
FlushFileBuffers(hIn);
s := 'H:\Programme\ConTEXT\ConTEXT.exe';
WriteFile(hOut, s[1], Length(s), iWritten, nil);
repeat
ReadFile(hIn, c, 1, iRead, nil);
if c = #13
then Break
else s := s + c;
until false;
FreeConsole;
end;
Ich bin wie immer Dankbar für jede Hilfe