Forum: PC-Programmierung Visula Basic 6: Warum wird ComEvReceive nicht aufgerufen ???


von Waverunner (Gast)


Lesenswert?

Hallo, vielleicht kann mir jemand weiterhelfen.

Ich habe in VB6 ein kleines Terminalprogramm geschrieben das Binärdaten
von der seriellen Schnittstelle anzeigen kann. Dazu benutze ich das
ComEvReceive Ereignis.
Dies funktioniert soweit ganz gut. Allerdings wird das ComEvReceive
Event nicht mehr aufgerufen sobald zwei Bytes mit jeweils 0b00000000
empfangen werden sollen.

Ich habe NullDiscard auf False gesetzt um Null Zeichen in den
Eingangsbuffer zu speichern. Input Mode ist auf Binary gesetzt.

Ich lasse gerade mitzählen wie oft das ComEvReceive Ereignis aufgerufen
wird. Ich weiss das ich 30 bytes übertrage - davon sind 15 bytes 0
(0b00000000) -> der Zähler zählt dann ebenfalls bis 15 (somit weiss ich
das dieses ComEvReceive Ereignis nicht aufgerufen wird)


Weiss jemand wie ich trotzdem das MSCOMM überreden kann bei
eintreffenden bytes die vom Wert Null sind trotzdem das ComEvReceive
Ereignis aufzurufen ?

Vielen Dank für jegliche Hilfe oder Tip

Waverunner

von Klaus (Gast)


Lesenswert?

Hi,
ich nehme an, das du das MScomm32 verwendest.
Bitte überprüfe dort den Parameter "RThreshold".
Wenn RThreshold = 0 dann wird ist Event ComEvReceive deaktivert.

Hier noch nen paar Links zum weiterlesen

http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=161523&SiteI...
http://www.devhood.com/tutorials/tutorial_details.aspx?tutorial_id=320

Bye
Klaus

von Waverunner (Gast)


Lesenswert?

Hallo Klaus,

nun geht es - hatte einen Fehler in den Einstellungen (genau wie Du
beschrieben hast)

Danke für Deine Hilfe

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.