| Hej alle
 
 Jeg er ved at blive vanvittig over ikke at kunne finde løsningen til en
 lille funktion jeg er ved at lave - håber meget på lidt hjælp her fra
 gruppen.
 
 Jeg ønsker at sende en datastreng til port 8000 på alle computere på et
 lokalnetværk.
 Jeg kender ikke IP adresser på de forskellige PC'ere, dog befinder alle
 PC'ere sig i samme segment f.eks. 192.168.1.xxx
 Jeg benytter winsock og VB6, og kan sagtens sende en pakke til en kendt IP
 adresse port 8000.
 
 min kode er lige nu som følger:
 
 *********************************
 
 Option Explicit
 
 Private Sub cmdTestPort_Click()
 
 winSck(0).Close
 winSck(0).RemoteHost = txtRemoteIP
 winSck(0).RemotePort = txtRemotePort
 winSck(0).Connect
 
 End Sub
 
 Private Sub cmdTestRange_Click()
 
 Dim i As Integer
 
 For i = 1 To 255
 
 txtLog = txtLog & "Probing 192.168.1." & CStr(i) & ":" &
 txtRemotePort & vbCrLf
 
 winSck(i).Close
 winSck(i).RemoteHost = "192.168.1." & CStr(i)
 winSck(i).RemotePort = txtRemotePort
 winSck(i).Connect
 
 Next i
 
 timCloscSck.Enabled = True
 
 End Sub
 
 Private Sub Form_Load()
 
 Dim i As Integer
 
 For i = 1 To 255
 Load winSck(i)
 Next i
 
 End Sub
 
 Private Sub timCloscSck_Timer()
 
 timCloscSck.Enabled = False
 
 txtLog = txtLog & "Closing all ... " & vbCrLf
 
 Dim i As Integer
 
 For i = 1 To 255
 winSck(i).Close
 Next i
 
 End Sub
 
 Private Sub winSck_Connect(Index As Integer)
 
 txtLog = txtLog & "Connected to 192.168.1." & Index & ":" &
 txtRemotePort & vbCrLf
 txtLog = txtLog & "Sending packet ... " & vbCrLf
 winSck(Index).SendData ("test")
 
 End Sub
 
 Private Sub winSck_Error(Index As Integer, ByVal Number As Integer,
 Description As String, ByVal Scode As Long, ByVal Source As String, ByVal
 HelpFile As String, ByVal HelpContext As Long, CancelDisplay As Boolean)
 
 txtLog = txtLog & "Error " & Number & " - " & Description & vbCrLf
 
 End Sub
 
 Private Sub winSck_SendComplete(Index As Integer)
 
 txtLog = txtLog & "SendComplete 192.168.1." & Index & ":" &
 txtRemotePort & vbCrLf
 winSck(Index).Close
 
 End Sub
 
 *********************************
 
 Min lille "lytte" funktion reagerer fint når cmdTestPort_Click() aktiveres,
 men så snart cmdTestRange_Click() aktiveres ser det ud som en stor timeout
 
 Hvad gør jeg galt, og hvordan er det muligt at sende en datastreng til port
 8000 på alle maskiner på et netværk med ukendte IP adresser ?
 
 Mvh Neo
 
 
 
 
 |