Die Listview muss 3 Spaten enthalten, View sollte auf Details stehen.
Funktion: Visual Basic: [code]Public startPort As Integer Public endPort As Integer Public IPAddress As String
Private Sub BackgroundWorker1_DoWork(ByVal sender As System.Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker1.DoWork
Try Dim lvi As New ListViewItem(startPort) Dim tryToConnect As System.Net.Sockets.TcpClient = New System.Net.Sockets.TcpClient(IPAddress, startPort)
'Es kann eine Verbindung hergestellt werden 'somit ist der Port offen lvi.SubItems.Add("is opend") lvi.ForeColor = Color.Red lvi.EnsureVisible() BackgroundWorker1.ReportProgress(0, lvi)
Catch ex As Exception 'Es kann keine Verbindung hergestellt werden 'somit ist der Port geschlossen Dim lvi As New ListViewItem(startPort) lvi.SubItems.Add("is Closed") lvi.SubItems.Add(ex.Message) lvi.ForeColor = Color.Green
BackgroundWorker1.ReportProgress(0, lvi)
End Try End Sub
Private Sub BackgroundWorker1_ProgressChanged(ByVal sender As Object, ByVal e As System.ComponentModel.ProgressChangedEventArgs) Handles BackgroundWorker1.ProgressChanged Dim lvi As New ListViewItem
'Daten vom Backgroundworker holen lvi = e.UserState
For startPort = startPort To endPort Me.BackgroundWorker1.RunWorkerAsync()
'Da ein Backgroundworker immer nur eine 'Aufgabe ausführen kann, warten wir hier 'bis er fertig ist und mit der nächsten 'Aufgabe weitermachen kann While Me.BackgroundWorker1.IsBusy = True Application.DoEvents() End While Next