La Web del Programador: Comunidad de Programadores
 
    Pregunta:  2729 - ERROR WINSOCK
Autor:  Pepo
Hola, estoy haciendo un programa que se comunique con el servidor a traves del control Winsock. El programa cliente no me da problemas le digo que conecte a traves del puerto 80 con el servidor y funciona perfectamente.

El problema viene cuando intento establecer conexion con la aplicacion del servidor. He intetado poner el la porpiedada LocalPort 80 y me da error (40006) y si dejo en blanco esta propiedad me hace exactamente lo mismo.

Alguien puede ayudarme?

El error exacto es:

Error ´40006´ en tiempo de ejecución:
Protocolo o estado de conexión erróneo para la transacción o petición solicitada.

NOTA.- Tanto en el cliente como en el servidor el protocolo es sckTCPProtocol

Gracias de antemano

  Respuesta:  hugo Araya Holvoet
Además tienes que tener en cuenta que como todo servidor tendrás ocuado el puerto 21, 1080, y otros según los servicios que tengas arriba.

  Respuesta:  Xavi
El puerto 80 es el puerto para WEB, si tienes instalado un servidor no podras usarlo pues ya estara tomado.

Simplemente, en el cliente NO establezcas la propiedad LocalPort en el cliente y tomara uno libre.

El que tienes que definir es el del servidor y recuerda Servidor.Localport=Cliente.RemotePort

No al reves!

  Respuesta:  Bruno Forchieri
Lo que pasa es que el puerto TCP/IP 80 es el usado por las páginas Web. Además es el default de WinSock. Lo que te recomiendo es que usés algún otro. Fijate, también de establecer correctamente el IP del servidor del cual cuelgan los clientes.
Una vez hice una aplicación cliente-servidor por el puerto 2000, probá por ese.
Cualquier cosa, escribime