Autor
|
Tema: Saber ip de conexion a internet de mi computador (Leído 4,461 veces)
|
hunter18
Desconectado
Mensajes: 202
|
He buscado y solo encuentro ejemplos donde me dan la ip de la red local por ejemplo el 192.168.1.35 y yo quiero saber la ip con la que me conecto a internet las que salen p.e 190.232.8.41 igual a como lo hace http://midireccionip.com/
|
|
|
En línea
|
|
|
|
andreselmejor
Desconectado
Mensajes: 1.990
TL WN620G,no audita pero navega como rayo.
|
-Que tal si abres conexiones de red--->estado---->soporte---->detalles y listo. -Otra forma es con el ares : panel de control---->red y listo tu ip publica. -cmd---->ipconfig y listo.(si tienes el modem conectado directo) -En el router,tambien sale. Suerte.
|
|
|
En línea
|
|
|
|
BlackZeroX
Wiki
Desconectado
Mensajes: 3.158
I'Love...!¡.
|
. Esto ya esta en el foro, usa el buscador y lo encontraras!¡.
Nota: Hay como dos codigos que doy fe de la existencia en este foro asi que a buscarle!¡.
Dulces Lunas!¡.
|
|
|
En línea
|
The Dark Shadow is my passion.
|
|
|
Petro_Boca
Desconectado
Mensajes: 233
Antoo Te Amoo :D
|
|
|
|
En línea
|
|
|
|
hunter18
Desconectado
Mensajes: 202
|
Sigo sin solucionar, siempre obtengo, me parece que se llama direccion privada(interna) el tipico 192.168.1.39,192.168.1.40, etc la misma que tambien sale con ipconfig ya que estoy en una red local y no directo al router. Si utilizo un control Winsock1.LocalIP tambien me devuelve la ip privada y yo quiero obtener desde vb6.0 la ip publica(externa), como lo hace la mentada http://midireccionip.com/ pero desde vb saludos
|
|
|
En línea
|
|
|
|
xkiz ™
|
asi sacas la Ip Publica: Const INTERNET_OPEN_TYPE_DIRECT = 1 Const INTERNET_OPEN_TYPE_PROXY = 3 Const INTERNET_FLAG_RELOAD = &H80000000 Const sURL = "http://checkip.dyndns.org/" Private Declare Function InternetOpen Lib "wininet" Alias "InternetOpenA" (ByVal sAgent As String, ByVal lAccessType As Long, ByVal sProxyName As String, ByVal sProxyBypass As String, ByVal lFlags As Long) As Long Private Declare Function InternetCloseHandle Lib "wininet" (ByVal hInet As Long) As Integer Private Declare Function InternetReadFile Lib "wininet" (ByVal hFile As Long, ByVal sBuffer As String, ByVal lNumBytesToRead As Long, lNumberOfBytesRead As Long) As Integer Private Declare Function InternetOpenUrl Lib "wininet" Alias "InternetOpenUrlA" (ByVal hInternetSession As Long, ByVal lpszUrl As String, ByVal lpszHeaders As String, ByVal dwHeadersLength As Long, ByVal dwFlags As Long, ByVal dwContext As Long) As Long Public Function GetPublicIp() Dim pIP() As String Dim nose As String Dim hOpen As Long, hFile As Long, sBuffer As String, Ret As Long sBuffer = Space(1000) hOpen = InternetOpen(scUserAgent, INTERNET_OPEN_TYPE_DIRECT, vbNullString, vbNullString, 0) hFile = InternetOpenUrl(hOpen, sURL, vbNullString, ByVal 0&, INTERNET_FLAG_RELOAD, ByVal 0&) InternetReadFile hFile, sBuffer, 1000, Ret InternetCloseHandle hFile InternetCloseHandle hOpen pIP = Split(Trim(sBuffer), ": ") nose = Left(pIP(1), Len(pIP(1)) - 16) GetPublicIp = nose End Function Private Sub Main() Debug.Print GetPublicIp End Sub
|
|
|
En línea
|
|
|
|
hunter18
Desconectado
Mensajes: 202
|
Te pasaste con el codigo, gracias
|
|
|
En línea
|
|
|
|
BlackZeroX
Wiki
Desconectado
Mensajes: 3.158
I'Love...!¡.
|
Eso no sirve para lo que se requiere (en Modems-Router) ¬¬". Ducles Lunas!¡.
|
|
|
En línea
|
The Dark Shadow is my passion.
|
|
|
_katze_
|
Const INTERNET_OPEN_TYPE_DIRECT = 1 Const INTERNET_OPEN_TYPE_PROXY = 3 Const INTERNET_FLAG_RELOAD = &H80000000 Const sURL = "http://checkip.dyndns.org/" Private Declare Function InternetOpen Lib "wininet" Alias "InternetOpenA" (ByVal sAgent As String, ByVal lAccessType As Long, ByVal sProxyName As String, ByVal sProxyBypass As String, ByVal lFlags As Long) As Long Private Declare Function InternetCloseHandle Lib "wininet" (ByVal hInet As Long) As Integer Private Declare Function InternetReadFile Lib "wininet" (ByVal hFile As Long, ByVal sBuffer As String, ByVal lNumBytesToRead As Long, lNumberOfBytesRead As Long) As Integer Private Declare Function InternetOpenUrl Lib "wininet" Alias "InternetOpenUrlA" (ByVal hInternetSession As Long, ByVal lpszUrl As String, ByVal lpszHeaders As String, ByVal dwHeadersLength As Long, ByVal dwFlags As Long, ByVal dwContext As Long) As Long Public Function GetPublicIp() Dim pIP() As String Dim nose As String Dim hOpen As Long, hFile As Long, sBuffer As String, Ret As Long sBuffer = Space(108) hOpen = InternetOpen(scUserAgent, INTERNET_OPEN_TYPE_DIRECT, vbNullString, vbNullString, 0) hFile = InternetOpenUrl(hOpen, sURL, vbNullString, ByVal 0&, INTERNET_FLAG_RELOAD, ByVal 0&) InternetReadFile hFile, sBuffer, [color=limegreen]108[/color], Ret InternetCloseHandle hFile InternetCloseHandle hOpen pIP = Split(Trim(sBuffer), ": ") nose = Left(pIP(1), Len(pIP(1)) - 16) GetPublicIp = nose End Function Private Sub Main() Debug.Print GetPublicIp End Sub
modificando el buffer a como esta y lo q esta en verde ! tmb funcio esto es valido tmb o hay algo en especial el valor que se asigno en tu code original xkiz? muy bueno y bien practico
|
|
|
En línea
|
|
|
|
xkiz ™
|
lo del size del buffer?
no se por que estaba en 1000, es un codigo viejo ese, nunca le preste mucha atencion. osea tengo el mismo codigo en C++ y ahi el size del buffer esta en 110, creo que aca le habia puesto 1000, para estar seguro, por si los de DynDNS modificaban algo en el .php ese. pero con 110 ó 108 tendria que ir bien.
|
|
|
En línea
|
|
|
|
|
|