Hallo Irt,
Zitat:Momentan wird nur beim Start des Programms die Verfügbarkeit überprüft.
Zwei ineinander verschachtelte Schleifen (eine für die Verügbarkeit und eine zum auslesen) wollte ich eigendlich vermeiden.
Wieso das denn nun wieder?
Entweder du willst zur Laufzeit ständig die Verfügbarkeit prüfen - oder nur beim Programmstart. Wenn du ständig (heißt: bei momentan nicht vorhandener Verbindung mit dem Gerät) prüfen willst, brauchst du eine äußere Schleife.
Evtl. würde sich hier eine Statemachine anbieten:
- State "init" prüft, ob COM-Port vorhanden und initialisiert diesen im Erfolgsfall
- State "Abfrage" läuft solange der Port vorhanden ist (d.h. bis ein [TimeOut-]Fehler auftritt)
- State "cleanup" räumt auf und geht zurück auf Anfang ("init")