Forums Neueste Beiträge
 

Ereignis-Code wird zweimal ausgeführt

13/03/2009 - 09:49 von Susann Markward | Report spam
Hallo,

ich habe folgendes Problem: Ich habe eine Ereignis-gesteuerte RS232
Kommunikation. Wenn von MSComm1_OnComm bspw. das Ereignis "comRxOver"
(Überlauf des Empfangspuffers) ausgelöst wird, soll das in einem
aufpoppenden Fenster innerhalb einer Listbox in einer anderen Form
(Info.frm) angezeigt werden. Die Kommunikation soll normal weiterlaufen.

Ich habe also zwei Formen Komm.frm und Info.frm. In Komm.frm làuft die
serielle Kommunikation ab und in Info.frm sollen Meldungen angezeigt werden.

In Komm.frm starte im Form_Load Ereignis die Form Info.frm mit

Info.Show vbModeless
Info.Hide

Wenn ich nun in Komm.frm beim Ereignis comRxOver (Überlauf des
Empfangspuffers) die Form Info.frm anzeigen will, wird dort der Code
doppelt abgearbeitet.

Private Sub MSComm1_OnComm()
Select Case MSComm1.CommEvent
' Behandeln jedes Ereignisses oder Fehlers der
' Seriellen Schnittstelle

' Fehler
Case comRxOver ' Überlauf des Empfangspuffers
Debug.Print "Das Ereignis ""Überlauf; des; Empfangspuffers"" wurde"
ausgelöst ..."
Info.ShowError ("Überlauf des Empfangspuffers!")
MSComm1.InBufferCount = 0
Debug.Print "Der Empfangspuffer wurde gelsöcht ..."
Info.Visible = True
Case comTxFull ' Sendepuffer voll
...
Case ...
...

Was mache ich falsch?
 

Lesen sie die antworten

#1 Susann Markward
13/03/2009 - 09:52 | Warnen spam
Hallo,

*Susann Markward* schrieb am 13.03.2009 09:49:
Wenn ich nun in Komm.frm beim Ereignis comRxOver (Überlauf des
Empfangspuffers) die Form Info.frm anzeigen will, wird dort der Code
doppelt abgearbeitet.



Also bspw. wird der Debug-Code derart ausgegeben

Das Ereignis "Überlauf; des; Empfangspuffers" wurde ausgelöst ...
Das Ereignis "Überlauf; des; Empfangspuffers" wurde ausgelöst ...
Der Empfangspuffer wurde gelöscht ...
Der Empfangspuffer wurde gelöscht ...

Demzufolge wird auch die Meldung Info.ShowError ("Überlauf des
Empfangspuffers!") zweimal gesendet (aufgerufen).

Ähnliche fragen