VB5 soros port lekérdezésre, ha nincs adat lefagy a program

Sziasztok!

Visual Basic 5 -ben próbálok programot írni. Lekérek a soros portról egy byte-t. Addig rendben is működik, amíg érkezik adat a portra, de ha valamilyen oknál fogva nem jön adat, akkor a program csak vár, és vár, és vár...
Szóval van valamilyen programozási eljárás, amivel nem fagy le a programom, ha nem érkezik adat?

Valahogy így néz ki a program:

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

SerialPort1.Open()
Label1.Text = SerialPort1.ReadByte
SerialPort1.Close()

End Sub

Köszi!

Hozzászólások

használd az onread eseményt és csinálj hozzá egy buffert, majd a bufferből olvass

Hello,
nem ismerem annyira a vb-t... de az biztos, hogy a readByte-nak lesz valahogy non-blocking verziója is... Ez akkor is vissza fog térni, ha nem olvasott adatot, viszont így mindig ellenőrizni kell, hogy jött-e valami. Az is lehet, hogy már az Open-nek kell megmondani, hogy non-blocking legyen...
Google biztos megmondja.

A port státuszregiszterében ott a bit, hogy jött-e adat.
Lekérdezem a státuszt, ha nem jött adat, nem akarom olvasni.