El control de socket de variable o objeto vb6.0 no está configurado
Esto se debe a que no se hace referencia a la biblioteca winsock y es necesario llamar a esta biblioteca.
El método de llamada de esta biblioteca es
Open VB6,
Presione la tecla de acceso directo CTRL T
Compruebe Microsoft Winsock Control 6.0
====================== ======= ===============================
El valor de retorno de FindFreeSocket siempre es 0
¡Problema de código!
La razón es muy simple: sock(i).state
El mensaje de error dice que no es un objeto, por lo que operar WINSOCK es una operación de objeto
No hay ningún objeto Si existe, definitivamente se informará un error
Obtenga un control WINSOCK y luego cambie el nombre de winsock1 a la matriz sock(0) [clave] para la generación dinámica
Cambie el código de la siguiente manera
p>Const ConnectMax As Integer = 200
Private Sub Form_Load()
Dim i As Integer
sock(0).LocalPort = 1011
sock(0).Listen
Para i = 1 a 200
Cargar sock(i)
Siguiente i
End Sub
'Evento de conexión de solicitud de cliente
Private Sub sock_ConnectionRequest(Index As Integer, ByVal requestID As Long)
Atenuar i como entero
Para i = 1 para ConnectMax
Si sock(i).State = sckClosed Entonces
MsgBox sock(i). Estado
calcetín(i).Aceptar ID de solicitud
Formulario1.Imprimir i amp "Aceptar solicitud"
'List1.AddItem "Local Port=" Str( sock(i).LocalPort) " RemotePort = " Str(sock(i).RemotePort)
Salir para
Else
MsgBox "El número máximo de Se han alcanzado las conexiones y no se puede continuar con la conexión del cliente correspondiente. Request"
End If
Next
End Sub
.