Einzelnen Beitrag anzeigen

MarkusReisser

Registriert seit: 26. Mai 2007
17 Beiträge
 
Delphi 7 Personal
 
#10

AW: TComPort - RS232 Ausgabe in Memo

  Alt 21. Mai 2014, 12:03
Ich seh schon... Aber er unterrichtet natürlich noch im Fach Informatik. Vielleicht habe ich es aber auch nur falsch aufgefasst. Es ist doch schon so lange her

Nun zu der Ausgabe.
Delphi-Quellcode:
procedure TForm1.ComPort1RxChar(Sender: TObject; Count: Integer);
var
Ausgabe:String; // Variable vom Typ String
begin
ComPort1.ReadStr(Ausgabe, 80);
Memo1.Lines.Add(Ausgabe);
end;
Es funktioniert grundsätzlich über die RxChar. Die Ausgabe in das Memo kann man ja noch auf anderen Wegen machen.

Der Fehler lag im ReadInterval Timeout des TComPort. Dieser ist per Default auf -1 gesetzt! Somit blieb mein Memo immer leer! Ich bin durch Zufall darauf gestoßen... Die Ausgabe ist ja sogar in dieser Form in den Examples aufgeführt - also muss diese Methode ja auch funktionieren.

Das ReadInterval Timeout habe ich nun mal auf 1000 gesetzt. Das Memo füllt sich schön mit dem Ausgabetext und natürlich auch mit meinen Befehlen.

So sieht der ausgegebene Inhalt aktuell aus:

Zitat:
C876#ena
C876#conf t
Enter configuration commands, one per line. End with C
NTL/Z.
C876(config)#username Test6 password Test6
C876(config)#exit
C876#copy
run start
Destination filename [startup-config]?
Building configuration...


*Mar 2 01:20:33.610: %SYS-5-CONFIG_I: Configured from console by console[OK]


C876#
C876#
C876#
Ich möchte aber, dass dieser so aussieht:

Zitat:
C876#ena
C876#conf t
Enter configuration commands, one per line. End with CNTL/Z.
C876(config)#username Test6 password Test6
C876(config)#exit
C876#copy run start
Destination filename [startup-config]?
Building configuration...


*Mar 2 01:20:33.610: %SYS-5-CONFIG_I: Configured from console by console[OK]


C876#
C876#
C876#
Er bringt dort ab und zu Zeilenumbrüche rein (hier bei dem Befehl "copy run start"). Wie kann ich dem vorbeugen? Hat da jemand eine Idee?

Auf alle Fälle schon mal ein großes Danke an Euch!
  Mit Zitat antworten Zitat