ich möchte in meinem Programm eine fremde Konsolenanwendung starten und deren zurückgegebene Werte auslesen. Ich benutze die Ubuntu Version 8.04 und Lazarus 0.9.24 Beta.
Meine Lösung sieht vor dies mit Hilfe von TProcess zu ermöglichen. In der Lazarus Wiki (http://wiki.lazarus.freepascal.org/Exec ... rograms/de" onclick="window.open(this.href);return false;) ist ja ein entsprechendes Beispiel dazu.
Mich wundert nur das ich beim ausführen einer Kommandozeile über die Konsole andere Rückgabewerte bekomme als über TProcess.
Mein Quelltext:
Code: Alles auswählen
procedure TForm1.StartProgram();
var
AProcess: TProcess;
begin
AProcess := TProcess.Create(nil);
AProcess.CommandLine := extract /media/Daten/test.mp3;
AProcess.Options := AProcess.Options + [poWaitOnExit, poUsePipes];
AProcess.Execute;
Memo1.Clear;
Memo1.Lines.LoadFromStream(AProcess.Output);
AProcess.Free;
end;
Hat jemand eine Idee woran das liegt?
MfG,
Christian