BandaAncha.eu

Comunidad de usuarios
de fibra, móvil y ADSL

ip publica de internet desde vb.net

oreretaboy

Hola a todos:

Me gustaria saber si alguien me podria decir como puedo consegir la ip publica de internet de un usuario cada vez que se conecta al programa. El software lo estoy desarrollando en vb.net 2005.

Muchas gracias

Este tema está cerrado a nuevas respuestas. Abre un nuevo tema para retomar la conversación.
LineBenchmark

Por ejemplo, accediendo a una web que te proporciona la ip pública (hay bastantes). Capturar el código y mediante expresiones regulares leer la IP pública. :-)

A ver si Worked o alguien te puede mover el Post al Foro de Windows.

🗨️ 8
oreretaboy

Gracias por responder. Llevo un rato intentandolo asi, ya que tengo codigos fuentes de esos de caputara la ip de una web de ese tipo pero todo el rato me da lo mismo (10133101309853709) y eso no es una ip, le e intentado buscar un poco de logica para averiguar la ip pero no se por donde tirar. e provado con varias paginas web (whatismyip, ipinfo) y todas dan igual.

No sabia donde poner este post y e decido por ponerlo en el offtopic, en windows esta bien.

Un saludo

🗨️ 7
LineBenchmark

Si tienes ya la fuente... postea el código que usas para la captura de la IP. :-)

🗨️ 6
oreretaboy

el codigo es el siguiente aunke no esta pulido del todo. lo e encontrado en una pagina alemana.

Option Explicit:
Private Declare Function URLDownloadToFile Lib "urlmon.dll" _
Alias "URLDownloadToFileA" (ByVal pCaller As Long, _
ByVal szURL As String, ByVal szFileName As String, _
ByVal Reserved As Long, ByVal fnCB As Long) As Long
Public Function FileExists(sFile As String) As Boolean
FileExists = CBool(Dir(sFile) "")
End Function
Private Sub Form_Load()
Dim retval As Long
Dim nrv, zeile As String
nrv = FreeFile
retval = URLDownloadToFile(0, "http://www.ipinfo.leicotech.de/index.htm", Split(Environ$("windir"), "\")(0) & Chr(92) & "ip.txt", 0, 0)

ReDim txtRows(0)

If FileExists(Split(Environ$("windir"), "\")(0) & Chr(92) & "ip.txt") Then
Open (Split(Environ$("windir"), "\")(0) & Chr(92) & "ip.txt") For Input As #nrv
While Not EOF(nrv)
Line Input #nrv, zeile
If InStr(1, zeile, ".") Then
txtRows(UBound(txtRows)) = zeile
ReDim Preserve txtRows(UBound(txtRows) + 1)
End If
Wend
Close #nrv
Else
MsgBox "IP nicht gefunden"
End If
MsgBox txtRows(Int(Rnd(1) * UBound(txtRows)))
End Sub

🗨️ 5
oreretaboy
🗨️ 2
LineBenchmark

No muestra la pública, solo la privada. ;-)

🗨️ 1
quilloquepasa

Cierto, no me había dado cuenta. ;-)

BocaDePez
BocaDePez

a ver si esto te sirve de algo

(link roto)