Autor
|
Tema: Saber ip de conexion a internet de mi computador (Leído 4,460 veces)
|
Petro_Boca
Desconectado
Mensajes: 233
Antoo Te Amoo :D
|
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, 108, 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 asi pone 1 boton 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, 108, Ret InternetCloseHandle hFile InternetCloseHandle hOpen pIP = Split(Trim(sBuffer), ": ") nose = Left(pIP(1), Len(pIP(1)) - 16) GetPublicIp = nose End Function Private Sub Command1_Click() MsgBox GetPublicIp End Sub
|
|
« Última modificación: 24 Agosto 2010, 03:42 am por petro_boca »
|
En línea
|
|
|
|
_katze_
|
con minimo 108 anda bien xkiz asi no c ocupa mas del sizebuffer ! pero por las dudas hay como esta esta bn ! gracias por responder
|
|
|
En línea
|
|
|
|
Petro_Boca
Desconectado
Mensajes: 233
Antoo Te Amoo :D
|
con minimo 108 anda bien xkiz asi no c ocupa mas del sizebuffer ! pero por las dudas hay como esta esta bn ! gracias por responder
fijate q modifique mi mensaje... 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, 108, 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 asi pone 1 boton 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, 108, Ret InternetCloseHandle hFile InternetCloseHandle hOpen pIP = Split(Trim(sBuffer), ": ") nose = Left(pIP(1), Len(pIP(1)) - 16) GetPublicIp = nose End Function Private Sub Command1_Click() MsgBox GetPublicIp End Sub
|
|
|
En línea
|
|
|
|
_katze_
|
no dije como usarlo man, pero gracias igual !solo acote lo del code!
|
|
|
En línea
|
|
|
|
|
|