Hallo
habe folgendes Problem
Möchte über eine dll Waageinformationen auslesen. aber irgendwie haut das mit den EventHandler nicht hin.
Die Function daten_schreiben wird über einen Timer von der Haupanwendung aufgerufen.
Nur reagiert der Eventhandler von tmpPort nicht, der mir die Daten einlesen soll.
Was mache ich falsch
mfg
Wolfgang
Hier der Code
Public Structure Waage_Satz
Dim Datum As String
Dim Uhrzeit As String
Dim Waage As String
Dim Status As String
Dim Tara As String
Dim Vorzeichen As String
Dim Wert As String
Dim Einheit As String
End Structure
Public Class S20_2761
Dim tmpSatz As Waage_Satz
Dim WithEvents tmpPort As New System.IO.Ports.SerialPort
Public Sub daten_lesen(ByVal tmpPort As System.IO.Ports.SerialPort)
tmpPort.Open()
tmpPort.Write("E")
End Sub
Function daten_schreiben() As Waage_Satz
daten_schreiben = tmpSatz
End Function
Public Sub tmpPort_EventHandler(ByVal sender As Object, ByVal e As System.IO.Ports.SerialDataReceivedEventArgs) Handles tmpPort.DataReceived
Dim tmpRead As String = ""
tmpRead = tmpPort.ReadLine
With tmpSatz
Dim tmpNow As DateTime = Now
.Datum = DateValue(tmpNow)
.Uhrzeit = TimeValue(tmpNow)
.Status = Mid(tmpRead, 2, 3)
.Waage = Mid(tmpRead, 6, 1)
.Tara = Mid(tmpRead, 11, 1)
.Vorzeichen = Mid(tmpRead, 12, 1)
.Wert = Trim(Mid(tmpRead, 13, 9))
.Einheit = Mid(tmpRead, 23, 2)
End With
End Sub
End Class
habe folgendes Problem
Möchte über eine dll Waageinformationen auslesen. aber irgendwie haut das mit den EventHandler nicht hin.
Die Function daten_schreiben wird über einen Timer von der Haupanwendung aufgerufen.
Nur reagiert der Eventhandler von tmpPort nicht, der mir die Daten einlesen soll.
Was mache ich falsch
mfg
Wolfgang
Hier der Code
Public Structure Waage_Satz
Dim Datum As String
Dim Uhrzeit As String
Dim Waage As String
Dim Status As String
Dim Tara As String
Dim Vorzeichen As String
Dim Wert As String
Dim Einheit As String
End Structure
Public Class S20_2761
Dim tmpSatz As Waage_Satz
Dim WithEvents tmpPort As New System.IO.Ports.SerialPort
Public Sub daten_lesen(ByVal tmpPort As System.IO.Ports.SerialPort)
tmpPort.Open()
tmpPort.Write("E")
End Sub
Function daten_schreiben() As Waage_Satz
daten_schreiben = tmpSatz
End Function
Public Sub tmpPort_EventHandler(ByVal sender As Object, ByVal e As System.IO.Ports.SerialDataReceivedEventArgs) Handles tmpPort.DataReceived
Dim tmpRead As String = ""
tmpRead = tmpPort.ReadLine
With tmpSatz
Dim tmpNow As DateTime = Now
.Datum = DateValue(tmpNow)
.Uhrzeit = TimeValue(tmpNow)
.Status = Mid(tmpRead, 2, 3)
.Waage = Mid(tmpRead, 6, 1)
.Tara = Mid(tmpRead, 11, 1)
.Vorzeichen = Mid(tmpRead, 12, 1)
.Wert = Trim(Mid(tmpRead, 13, 9))
.Einheit = Mid(tmpRead, 23, 2)
End With
End Sub
End Class