VB中获取电脑外网IP的源代码由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“vb获取本机ip”。
VB中获取电脑外网IP的源代码
大家知道每个能上网的电脑都拥有一个自己的IP,如果你是位于局域网呢,那么你的ip可能是192.168.***.***或者10.***.***.***之类的,这样的IP外网是无法访问的,只能在同一个网段之间互访。而这时在自己电脑的CMD上ipconfig /all看见自己的ip就是内网IP,而我们是以外网IP访问网络的,那么我们怎么获取外网IP呢?这需要我们访问一些专门的网站来获取。这里我收集了几个,拿来共享。
http://members.3322.org/dyndns/getip
http:///ip2city.asp
http:///IpInfo.asp?sType=0
http:///ip2city.asp“
wburl = GetUrlFile(wburl)
If InStr(1, wburl, ”无法找到该页“)= 0 Then
X1 = InStr(1, wburl, ”[“)
X2 = InStr(1, wburl, ”]“)
X1 = Mid(wburl, X1, X2X3)
X3 = Replace(X3, ”“, ”“)
X3 = Replace(X3, ” “, ”“)
X3 = Replace(X3, vbCrLf, ”“)
GetSub = X3
Exit Function
Else
GetSub = ”127.0.0.1“
End If
err:
GetSub = ”127.0.0.1“
End Function
Private Function GetUrlFile(stUrl As String)As String
Dim lgInternet As Long, lgSeion As Long
Dim stBuf As String * 1024
Dim inRes As Integer
Dim lgRet As Long
Dim stTotal As String
stTotal = vbNullString
lgSeion = InternetOpen(”VBTagEdit“, 1, vbNullString, vbNullString, 0)If lgSeion Then
lgInternet = InternetOpenUrl(lgSeion, stUrl, vbNullString, _0, INTERNET_FLAG_NO_CACHE_WRITE, 0)
If lgInternet Then
Do
inRes = InternetReadFile(lgInternet, stBuf, 1024, lgRet)stTotal = stTotal & Mid$(stBuf, 1, lgRet)
Loop While(lgRet 0)
End If
inRes = InternetCloseHandle(lgInternet)
End If
GetUrlFile = stTotal
End Function
使用方法:
在form中调用GetSub就行了
List1.AddItem(”公网IP:“ & GetSub + ”..")