Ho delle difficoltà nel creare un' autenticazione al server con questo codice:
Il client invia in entrambi i casi:
codice:
Private Sub Winsock1_Connect()
Dim Password As String
Password = Text5.Text
Winsock1.SendData Password
End Sub
codice:
Private Sub Winsock1_ConnectionRequest(Index As Integer, _
ByVal requestID As Long)
Text2.Text = Text2.Text & "Accettata connessione con : " & _
Winsock1(Index).RemoteHostIP & vbCrLf
ListView1.ListItems.Add , , Winsock1(Index).RemoteHostIP, 1, 3
NumSockets = NumSockets + 1
'//Increase Number of Sockets by one.
Load Winsock1(NumSockets)
'//Load a New Winsock Object Nusockets as Index Value
Winsock1(NumSockets).Accept requestID
List3.AddItem Winsock1(NumSockets).Index & ": " & Winsock1(Index).RemoteHostIP & " Ora:" & Time & " " & Date
'//Accept the New Connection
Label2.Caption = "Utenti in linea " & ListView1.ListItems.Count
DoEvents
Timer1.Enabled = True
Timer1.Interval = 200
End Sub
Private Sub Winsock1_DataArrival(Index As Integer, ByVal _
bytesTotal As Long)
Dim vtData As String
Dim n As Integer
Winsock1(Index).GetData vtData, vbString
Text2.Text = Text2.Text & vtData & vbCrLf
On Error Resume Next
For n = 1 To NumSockets
Winsock1(n).SendData "inviolistapcconnessi" & vtData
ListView1.ListItems(n).ListSubItems.Add , , vtData, 1, 1
Next
End Sub
cosa che invece mi riesce con questo altro codice:
codice:
Private Sub Winsock1_ConnectionRequest(ByVal requestID As Long)
If Winsock1.State <> sckClosed Then Winsock1.Close
Winsock1.Accept requestID
End Sub
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim Password As String
Password = Text3.Text
Static Autenticato As Boolean
Dim Dati As String
Winsock1.GetData Dati, vbString
DoEvents
List2.AddItem List2.Text & "remoto> " & Dati '& vbCrLf ' Aggiunge il Testo
If Autenticato = False Then
If Dati = Password Then
Autenticato = True
List1.AddItem Winsock1.RemoteHostIP
List2.AddItem "Welcome.."
Winsock1.SendData "Welcome " & Winsock1.RemoteHostIP
Else
Winsock1.Close
End If
End If
Come risolvo?