Programación General > Visual Basic 6.0 e inferiores
Recibir Parametros De Una Aplicacion
Epa:
Buenas.
Mensajes con subclasificacion y SendMessage. O con sockets.
Saludos.
pacegar:
ok, si pudieras explicarnos un poco mejor usando subclasificacion y sendmessage.
Ahora lo estoy haciendo con sockets. Pero tengo un problema
En la Aplicacion A tendo declardo el socket en modo listen y funciona correctamente. Acepta conexiones y optiene los parámetros pasádos (lo estoy probando con un telnet)
El error está en la aplicación B donde intento realizar la conexión y enviar el parámetro. El problema es que despues del CONNECT el STATE del sockets se queda en 6 (Connecting) por eso no puedo enviar nada.
Aplic B.
Winsock1.Protocol = sckTCPProtocol
Winsock1.RemoteHost = Winsock1.LocalIP
Winsock1.RemotePort = 1001
Winsock1.Connect
a = Winsock1.State ' Aqui se queda en 6 connecting y no en 7 connected
Winsock1.SendData PARAMETRO
Winsock1.Close
Epa:
Buenas.
--- Código: Text --- Private Sub Form_Load() Winsock1.LocalPort = 1001 Winsock1.ListenEnd Sub Private Sub Winsock1_Close() 'si se pierde la coneccion Winsock1.Close 'cerramos Winsock1.Listen ' escuchamos nuevos pedidos de coneccionEnd Sub Private Sub Winsock1_ConnectionRequest(ByVal requestID As Long) If Winsock1.State <> sckClosed Then ' si no se cerro la Winsock1.Close ' coneccion anterior Winsock1.Listen ' se cierra, y ecucha End If Winsock1.Accept (requestID) 'se acepta la peticion de coneccion End Sub
Eso es lo que va en el servidor.
Fijate que los puertos del server y el cliente no pueden ser el mismo.
Y ademas no es bueno usar puertos tan bajos como 1001
ya que de los puertos 1 al 1000 estan reservados para windows y del 1000 al 2000
son los puertos mas comunes de las aplicaciones. si tienes firewall puedes fijarte que no este en uso.
En cuanto a la subclasificacion, se trata de "mandar e "interseptar" mensajes.
Una vez activada la subclasificacion se mandan esos mensajes con la API SensMessage y como mensaje la constante WM_COMMAND y una constante que diga el numero de mensaje, este inventado por ti.
Aqui tienes un ejemplo de esto
Subclasificacion
Espero te sirva la info.
Saludos :hola:
Epa:
Releyendo el post, me di cuenta q con lo de los sockets te dije cualquier cosa, ya q eso lo tienes.
Si tienes firewall, fijate que este no te detenga la coneccion.
Y puedes intentar conectar con
Winsock1.Connect "127.0.0.1", "8000"
deberia ser lo mismo, pero en una de esas..
Saludos :hola:
pacegar:
el problema está en que el servidor si acepta la conexión que le envía el cliente, pero este ultimo se queda en state 6 (connectando) y nunca pasa a 7 (conectado) para que pueda enviar datos.
Navegación
[#] Página Siguiente
[*] Página Anterior
Ir a la versión completa