Einzelnen Beitrag anzeigen

Culxxaw

Registriert seit: 21. Okt 2008
40 Beiträge
 
#1

TDosCommand - Problem mit diversen Befehlen

  Alt 20. Jun 2011, 21:16
Hallo liebe DP,

ich nutze die Komponente TDosCommand. Die letze Bearbeitung dieser Version war am 05-11-2009 (hoffe, dass dies die aktuelle Version ist).

Hier mal mein Quellcode:
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
cmd := TDoscommand.Create(self);
cmd.OnNewLine := cmdNewLine;
cmd.OnTerminated := cmdTerminated;

cmd.CommandLine := 'cmd';
cmd.Execute;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  cmd.SendLine(edit1.Text,true);
end;

procedure TForm1.cmdNewLine(Sender: TObject; NewLine: string; OutputType: TOutputType);
begin
memo1.Lines.Append(Newline);
end;

procedure TForm1.cmdTerminated(Sender: TObject);
begin
  cmd.Stop;
end;
Alles funktioniert auch wunderbar nur bei bestimmten Befehlen bekomme ich die Ausgabe nicht direkt übermittelt sondern erst beim Beenden des Programms.
Ein Beispiel ist hier die beim System mitgelieferte ftp.exe. Starte ich diese und sende dann beispielsweise den Befehl "?" dann erscheint nur der Satz "Befehle können abgekürzt werden. Befehle sind:". Die Befehlsliste (die eigentlich kommen müsste) erscheint erst nach Beenden der Exe über den "Quit"-Befehl. Gibt es irgendeine Möglichkeit das zu beheben?

Übrigens:
Nutze ich den Code
Delphi-Quellcode:
cmd.CommandLine := 'ftp';
cmd.Execute;
an der entsprechenden Stelle so ergibt sich das gleiche Bild.
Ebenso bei
cmd.OutputLines := memo1.Lines;

Vielen Dank im Voraus!
  Mit Zitat antworten Zitat