Hallo,
ich habe ein Anzeigegerät über Bluetooth mit dem PC verbunden. Die folgende Function versucht eine Verbindung zu diesem Gerät herzustellen:
Wenn das Gerät eingeschaltet und mit dem PC verbunden ist, funktioniert es. Auch wenn der Bluetooth-Adapter nicht angeschlossen ist, wird eine entsprechende Meldung ausgegeben. Wenn allerdings der Adapter eingesteckt und das Gerät ausgeschaltet ist, stürzt das Programm ab. Ich schaffe es leider nicht, den Fehler abzufangen. Folgende Meldung wird in der Fehlerliste angezeigt:
BC42105 Die Funktion "Connect" gibt nicht für alle Codepfade einen Wert zurück. Wenn das Ergebnis verwendet wird, kann zur Laufzeit eine NULL-Verweisausnahme auftreten.
Ich war davon ausgegangen, dass "Try" im Fehlerfall in den Catch-Bereich springt.
Hat jemand eine Idee, was ich übersehen habe?
ich habe ein Anzeigegerät über Bluetooth mit dem PC verbunden. Die folgende Function versucht eine Verbindung zu diesem Gerät herzustellen:
VB.NET-Quellcode
- Public Async Function Connect(Devicename As String) As Task(Of Boolean)
- Try
- Dim DeviceInfo As BluetoothDeviceInfo = Nothing
- Client = New BluetoothClient()
- Dim Devices As BluetoothDeviceInfo() = New BluetoothDeviceInfo() {}
- Await Task.Run(Sub()
- Devices = Client.DiscoverDevices()
- End Sub)
- For Each Device As BluetoothDeviceInfo In Devices
- If Device.DeviceName.ToLower().Equals(Devicename.ToLower()) Then
- DeviceInfo = Device
- End If
- Next
- If DeviceInfo Is Nothing Then
- Return False
- End If
- Dim EndPoint As New BluetoothEndPoint(DeviceInfo.DeviceAddress, BluetoothService.SerialPort)
- 'Beim Ausführen der folgenden Zeile stürzt das Programm ab.
- Client.Connect(EndPoint)
- If Client.Connected Then
- Datenstrom = Client.GetStream()
- Return True
- End If
- Return False
- Catch ex As PlatformNotSupportedException
- End Try
- End Function
Wenn das Gerät eingeschaltet und mit dem PC verbunden ist, funktioniert es. Auch wenn der Bluetooth-Adapter nicht angeschlossen ist, wird eine entsprechende Meldung ausgegeben. Wenn allerdings der Adapter eingesteckt und das Gerät ausgeschaltet ist, stürzt das Programm ab. Ich schaffe es leider nicht, den Fehler abzufangen. Folgende Meldung wird in der Fehlerliste angezeigt:
BC42105 Die Funktion "Connect" gibt nicht für alle Codepfade einen Wert zurück. Wenn das Ergebnis verwendet wird, kann zur Laufzeit eine NULL-Verweisausnahme auftreten.
Ich war davon ausgegangen, dass "Try" im Fehlerfall in den Catch-Bereich springt.
Hat jemand eine Idee, was ich übersehen habe?