Ahora puedes obtener la IP de tu conexión desde código.
cualesmiip.e-mision.net pone a tu disposición un servicio contra el que realizar las consultas vía socket.
Puedes conectarte al puerto 999 de cualesmiip.e-mision.net y te devolverá la IP con la que te has conectado.
Pulsa aquí http://cualesmiip.e-mision.net:999, te devolverá tu IP pasando por encima de los proxys.
Una nueva opción: Sí envías el parámetro
TIMER, te devolverá la fecha y hora GMT sincronizada con el reloj atómico del National
Institute of Standards and Technology (NIST). Para adaptarlo en función
de la zona horaria donde os encontréis,
te recomiendo revises este enlace.
Cybertowers ha realizado un programa Freeware
para utilizar este servicio, interesante sobre todo para los que tienen IP Dinámica.
Puedes bajártelo desde aquí (2,5
Mb.).
Os pongo un ejemplo desarrollado en Visual
Basic.
Debéis crear un nuevo proyecto e incluir
el componente "Microsoft Winsock Control" (MSWINSCK.OCX).
A continuación añadís un Listbox con el nombre Llog y un CommandButton con el nombre
Btn_HoraSystem, a continuación este código:
Option Explicit
Private Sub Btn_HoraSystem_Click()
' Pedimos la hora del sistema
Llog "Pedimos la hora del sistema con el comando TIMER"
Winsock1.SendData "TIMER"
End Sub
Private Sub Form_Load()
Me.Show
' Configuramos el Socket y conectamos con el puerto 999
Winsock1.Protocol = sckTCPProtocol
Winsock1.RemoteHost = "cualesmiip.e-mision.net"
Winsock1.RemotePort = 999
Llog "Conectamos con el puerto " & Winsock1.RemotePort & " de " & Winsock1.RemoteHost
Llog "para que nos devuelva la IP de nuestra conexión"
Winsock1.Connect
End Sub
Private Sub Winsock1_Close()
' Este evento salta cuando una de las 2 partes cierra la conexión
Llog "Se ha cerrado la conexión"
End Sub
Private Sub Winsock1_Connect()
' Este evento salta cuando se establece la conexión
Llog "Se ha conectado..."
End Sub
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
' Este evento se produce cuando nos llega información
Dim DatosRecibidos As String
Winsock1.GetData DatosRecibidos, vbString
Llog DatosRecibidos
End Sub
Sub Llog(Texto As String)
' Para llevar un registro por pantalla de lo que pasa en el programa
Lst_Datos.AddItem Format(Now(), "mmdd") & "." & Format(Now(), "hhmmss") & ": " & Texto
Lst_Datos.ListIndex = Lst_Datos.ListCount - 1
End Sub
Puedes bajarte el ejemplo aquí
Si tenéis algún problema de conexión o
queréis aportar alguna sugerencia, podéis contactar conmigo en
CrAzY hOuSe
|