Board logo

标题: VBS获取外网IP [打印本页]

作者: BatHome    时间: 2008-1-8 23:11     标题: VBS获取外网IP

  1. '/*程序名称:获取外网IP
  2. '/*说明:核心代码源自网络,youxi01整理修改;
  3. set oDOM = WScript.GetObject("http://ipseeker.cn//")
  4. '/*/////////设置连接是否成功的标志符;/////////
  5. flag=0
  6. '/*////////设置连接次数;///////////
  7. for i=1 to 10
  8.    '/*///////////如果已经成功连接,则跳出for循环;////////
  9.    if oDOM.readyState = "complete" then
  10.       flag=1
  11.       exit for
  12.    end if
  13.    WScript.sleep 500       '每0.5秒就连接一次;
  14. next
  15. if flag=0 then
  16.     msgbox "连接超时,请重新连接...",vbExclamation,"连接超时"
  17.     wscript.quit
  18. end if
  19. '/*///////////保存返回结果////////////
  20. s=oDOM.documentElement.innerText
  21. '/*///////////正则表达式///////////
  22. Set Re = New RegExp
  23. '/*//////数据匹配:数字.数字.数字.数字
  24. Re.Pattern="(\d+)\.(\d+)\.(\d+)\.(\d+)"
  25. for each r in Re.Execute(s)
  26.      res=r
  27.      exit for
  28. Next
  29. msgbox "您的IP地址是:"&vbcrlf&vbcrlf&res,vbInformation,"连接成功"
复制代码

作者: breakan    时间: 2008-4-21 11:38

不错!!!!!!!!!!!!!!
作者: kx25    时间: 2008-7-25 18:35

在我的电脑上(电信网络),不是连接超时就是返回的IP是空的,仅显示“您的IP地址是:”
作者: yu2n    时间: 2014-12-11 17:41

本帖最后由 pcl_test 于 2017-6-15 19:23 编辑
  1. ' GetWanIP.vbs
  2. If Ping("www.ip138.com") Then
  3.   Msgbox "你的外网IP是:"  & HttpGet("http://1212.ip138.com/ic.asp")
  4. Else
  5.   Msgbox "你的电脑没有连通外网。"
  6. End If
  7. Function HttpGet(ByVal url)
  8.   On Error Resume Next
  9.   With CreateObject("Msxml2.ServerXMLHTTP")
  10.     .open "GET", url, False
  11.     .send
  12.     HttpGet = split(split(.responseText, "[")(1), "]")(0)
  13.   End With
  14. End Function
  15. Function Ping(ByVal host)
  16.   On Error Resume Next
  17.   Ping = False
  18.   Dim objWMIService, colItems
  19.   Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")
  20.   Set colItems = objWMIService.ExecQuery("Select * From Win32_PingStatus Where Address='" & host & "'")
  21.   For Each objItem In colItems
  22.     If objItem.StatusCode = 0 Then Ping = True : Exit For
  23.   Next
  24. End Function
复制代码

作者: CrLf    时间: 2014-12-11 22:14

回复 4# yu2n


这个网址也挺干净:
http://city.ip138.com/ip2city.asp
之前还有一个更干净的,可惜失效了




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2