Iniciando con Winsock

Jose Luis
24 de Noviembre del 2003
La verdad estoy empezando a utilizar el winsock y estoy buscando algun ejemplo de manera que me pueda apoyar en el. Ya encontre algunos pero son muy sencillos, cualquier ayuda la agradecere enormemente.

minerva
24 de Noviembre del 2003
Yo tb estoy empezando, este es un programita que hice, espero que te sirva de algo:
CÓDIGO PARA EL CLIENTE:

Private Sub cmdConectar_Click()

If txtIP.Text = "" Then
MsgBox "Campo 'IP' no válido. " & Chr(13) & "El campo es obligatorio", vbCritical, "Error en campo Enviar"
txtIP.SetFocus

Else

tcpCliente.RemoteHost = txtIP.Text
tcpCliente.Connect


MsgBox "Ya está conectado al equipo " & tcpCliente.RemoteHost & ". " & Chr(13) & "Puede iniciar la conversación.", vbInformation, "Usuario conectado"

'Cambios de diseño.
cmdConectar.Enabled = False
txtIP.Enabled = False
lblIP.Enabled = False

cmdEnviar.Enabled = True
lblEnviar.Enabled = True
txtEnviarTexto.Locked = False

End If

End Sub
Private Sub cmdConsulIP_Click()

Line1.Visible = True
Line2.Visible = True

lblMiIP.Visible = True
lblHost.Visible = True

lblMiIP.Caption = " IP de su ordenador: " & tcpCliente.LocalIP & ""
lblHost.Caption = " Host de su ordenador: " & tcpCliente.LocalHostName & ""

cmdConsulIP.Enabled = False

End Sub

Private Sub cmdEnviar_Click()

'Instrucciones son necesarias para enviar información al servidor.

If txtEnviarTexto.Text = "" Then
MsgBox "Campo 'Enviar' no válido. " & Chr(13) & "El campo es obligatorio", vbCritical, "Error en campo Enviar"
txtEnviarTexto.SetFocus

Else
tcpCliente.SendData (txtEnviarTexto.Text)
txtEnviarTexto.Text = ""
txtEnviarTexto.SetFocus

End If

End Sub

Private Sub cmdSalir_Click()
End
End Sub

Private Sub Form_Load()

cmdEnviar.Enabled = False
lblEnviar.Enabled = False
txtEnviarTexto.Locked = True

tcpCliente.RemotePort = 1001

End Sub

Private Sub lblHost_Click()

Line2.Visible = False
lblHost.Visible = False
cmdConsulIP.Enabled = True

End Sub

Private Sub lblMiIP_Click()
Line1.Visible = False
lblMiIP.Visible = False
cmdConsulIP.Enabled = True

End Sub

'CÓDIGO PARA EL SERVIDOR:

Private Sub cmdCliente_Click()

frmCliente.Show 1

End Sub

Private Sub cmdEscuchar_Click()

cmdCliente.Enabled = True
cmdEscuchar.Enabled = False

tcpServer.Listen
MsgBox "El servidor está esperando la petición de conexión", vbInformation, "A la espera"



End Sub

Private Sub Form_Load()

cmdCliente.Enabled = False
tcpServer.LocalPort = 1001

End Sub

Private Sub tcpServer_DataArrival(ByVal bytesTotal As Long)

'DataArrival: Se produce cuando llegan nuevos datos.
'Este evento es importante, ya que debemos hacer algo con la información que llega.

MsgBox "Los datos del puerto " & tcpServer.RemoteHost & " han llegado al servidor ", vbInformation, "Datos Recibidos"

Dim strDatos As String
tcpServer.GetData strDatos

txtMostrar.Text = txtMostrar.Text + strDatos
frmCliente.txtMostrar = frmCliente.txtMostrar + strDatos


End Sub

Private Sub tcpServer_ConnectionRequest(ByVal requestID As Long)

'ConnectionRequest: Se produce cuando el equipo remoto solicita una conexión.
'Sin este evento no se puede llevar a cabo la conexión.

If tcpServer.State <> sckClosed Then
tcpServer.Close
End If

'Aceptar nueva conexión.
tcpServer.Accept requestID

End Sub


Private Sub cmdConsulIP_Click()

Line1.Visible = True
Line2.Visible = True

lblMiIP.Visible = True
lblHost.Visible = True

lblMiIP.Caption = " IP de su ordenador: " & tcpServer.LocalIP & ""
lblHost.Caption = " Host de su ordenador: " & tcpServer.LocalHostName & ""

cmdConsulIP.Enabled = False


End Sub

Private Sub cmdSalir_Click()
End
End Sub

Private Sub lblHost_Click()

Line2.Visible = False
lblHost.Visible = False
cmdConsulIP.Enabled = True

End Sub

Private Sub lblMiIP_Click()
Line1.Visible = False
lblMiIP.Visible = False
cmdConsulIP.Enabled = True

End Sub