Falscher Ansatz!
1, Direktes Eintragen von Thread in
GUI-Controls wird über kurz oder lange krachen. Diese Aufrufe dürfen nur Synchronisiert erfolgen
2, Deine farbig-Markierungen gehen flöten sobald die ganze ListBox neu gezeichnet werden muss.
Möglicher Lösungsansatz:
1, Nimm statt TListBox ein TListView und betreibe es im Virtual-Modus
2, Verwalte deine Meldungen in einer eigenen List welche Text, Farbe, ... speichert. Im entsprechenden Draw-Event der ListView kannst Du die Items entsprechend Formatieren.
3, Die kommunikation Thread ->
GUI kannst Du z.B. über eine TThreadList machen, wo du deine neuen Einträge hinzufügst und z.B. über eine Windows-Message asynchron ein neuzeichnen der TListview auslöst.
Windows Vista - Eine neue Erfahrung in Fehlern.