Forum: PC-Programmierung VB.net Programmabsturz bei RS232Port schließen


von Markus (Gast)


Lesenswert?

Hi,

habe Teilefunktionen von meienm Programmcode angehängt .....

bin dabei eine Bedienoberfläche für eine ATmega644P Platine mit VB.net 
2005 zu erstellen. Kommunikation läuft gut, nur habe ich immer das selbe 
Problem wenn ich das Programm (MainForm) und manchmal nur die Verbindung 
(RS232Port) schliessen will. Nämlich das das Programm sich aufhängt.
Wenn ich Schrittweise den Code ausführe, sieht man sofort das durch die 
.close() Methode der Seriellen Schnittstelle sich das Programm zu einer 
Gedenkpause entscheidet , da ab hier nichtsmehr geht.

Dch dachte auch , das es an folgendem Effekt liegen könnte :

Ich schliesse den Port, während das Programm noch in der Byte-Empfangen 
Schleife ist.Das würde bedeuten, er würde in einer Endlosschleife auf 
empfangbare bytes warten. Deshalb hab ich den Schleifenzähler mit in die 
Loop Bedingung genommen, zur Sicherheit das diese nicht endlos 
ausgeführt wird. Aber ich denke er würde dann eh bei einem 
Ausleseversuch eines Bytes bei geschlossendem Port einen Ausnahmefehler 
erzeugen, den ich ja durch den Try Block auffangen würde.


Habe bisher auch nichts gefunden, das es beim schliessen der Seriellen 
Ports besondere Vorkehrungen geben muss. Habe vorsichtshalber alle Daten 
im Empfangs- und Lesepuffer verworfen, das hat aber leider auch nichts 
geholfen.

Jemand eine idee von euch ?



Danke fürs Lesen
Gruss Maggus ;)

von Markus (Gast)


Angehängte Dateien:

Lesenswert?

Sorry, Datei fehlt. Bitte sehr .....

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.