Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#2

AW: lesen von RS232 / TComPortLib / Delphi6

  Alt 1. Dez 2014, 17:23
Wozu das Sleep?

Hast du mal um deinen Code ein Try-Except drumrumgemacht, inkl. Fehlerausgabe?
Wenn da eine Exception auftritt, dann wird diese nicht angezeigt, sondern in den TComPort-Lese-TThread weitergeleitet.
Der Thread wird dadurch beendet und das war's dann.

Auch mußt du aufpassen, ob OnRxChar im Hauptthread läuft (weiß das grade nicht) und wenn nicht, dann darf dort nich auf die VCL zugegriffen werden.

Außerdem, wenn du OnRxChar benutzt, dann mußt du selber sicherstellen, daß die Daten "komplett" sind und den unvollständigen Teil selber zwischenspeichern, bzw. auch zuviele Daten (vom nächsten Datenpacket).
Oder du benutzt TComDataPacket.OnPacket, welches für dich das Cachen und Zerlegen übernimmt.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu ( 1. Dez 2014 um 17:27 Uhr)
  Mit Zitat antworten Zitat