Un esempio di come puoi superare il blocco dell'UI.
Ovviamente se hai più porte seriali fisiche non puoi sapere quale sia quella realmente collegata alla periferica.codice:Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Try Dim task As New System.Threading.Thread(AddressOf SerialPortOpen) task.Start() Dim count As Long = System.Environment.TickCount Dim temp As Long Do While task.IsAlive temp = System.Environment.TickCount - count If temp > 2000 Then MessageBox.Show("Timeout Porta") Exit Sub End If Loop MessageBox.Show("Porta valida") 'Connessione alla periferica Catch ex As Exception End Try End Sub Sub SerialPortOpen() Try SerialPort1.Open() Catch ex As Exception End Try End Sub

Rispondi quotando