Foxtable(狐表)用户栏目专家坐堂 → 怎样编程获取公网IP地址并通知?


  共有2820人关注过本帖树形打印复制链接

主题:怎样编程获取公网IP地址并通知?

帅哥哟,离线,有人找我吗?
jacksn
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:106 积分:1002 威望:0 精华:0 注册:2012/9/6 14:13:00
怎样编程获取公网IP地址并通知?  发帖心情 Post By:2018/11/28 12:57:00 [只看该作者]

公司是用不固定的公网IP。但我希望在家里可以连接公司的远程桌面和sql服务器,我想编一个foxtable的小程序能在公网IP改变时发送信息给我(可以用email或其他形式),让我知道公司的IP就可以连接了。
这个小程序的思路应该如何呢?怎样获取公网IP?请大神指导

 回到顶部
帅哥哟,离线,有人找我吗?
jacksn
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:106 积分:1002 威望:0 精华:0 注册:2012/9/6 14:13:00
  发帖心情 Post By:2018/11/28 14:32:00 [只看该作者]

我在命令窗口运行以下代码
Dim WinHttpReq As Object = CreateObject("Msxml2.ServerXMLHTTP")
WinHttpReq.Open("GET", "http://www.ip138.com/ip2city.asp")
WinHttpReq.Send
'正则表达式解析出外网IP
Dim MyRegExp
MyRegExp = CreateObject("VBScript.RegExp")
MyRegExp.Pattern = "((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?)"
MyRegExp.IgnoreCase = True
MyRegExp.Global = True
Dim Matches As object = MyRegExp.Execute(WinHttpReq.ResponseText)
Return Matches.Item(0).Value
时显示:操作超时 错误

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/11/28 14:56:00 [只看该作者]

1、你可以试试这个事件

 

http://www.foxtable.com/webhelp/scr/2710.htm

 

2、如果你希望获取外网ip,参考

 

Dim WinHttpReq As Object = CreateObject("Msxml2.ServerXMLHTTP")
WinHttpReq.Open("GET", "http://2018.ip138.com/ic.asp")
WinHttpReq.Send
'正则表达式解析出外网IP
Dim str As String = WinHttpReq.ResponseText
Dim mc = System.Text.RegularExpressions.Regex.Matches(str, "[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+")
If mc.count > 0 Then
    Return mc(0).value

Else
    Return Nothing
End If


 回到顶部
帅哥哟,离线,有人找我吗?
wei0769
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1814 积分:19234 威望:0 精华:0 注册:2013/4/10 14:38:00
  发帖心情 Post By:2020/4/13 15:38:00 [只看该作者]

公司IP地址还需要是外网IP地址


 回到顶部