bj17209 发表于 2011-3-20 00:47:00

已解决:如何用域名查询端口是否打开!

本帖最后由 bj17209 于 2011-4-1 10:05 编辑

比如说查询baidu的80端口是否开放,用ip检测提示是打开的,为什么用www.baidu.com域名查询却提示没有打开
TCPStartUp()
$Socket = TCPConnect("119.75.218.70", 80)
If $socket <> 1 and $socket <>-1 and $socket <>2 Then
msgbox (32,"OK","端口是开放的!^_^")
Else
msgbox (16,"ERROR","发现错误了!^_^")
endif
TCPCloseSocket($Socket)

以上代码用IP检测80端口是打开的

TCPStartUp()
$Socket = TCPConnect("www.baidu.com", 80)
If $socket <> 1 and $socket <>-1 and $socket <>2 Then
msgbox (32,"OK","端口是开放的!^_^")
Else
msgbox (16,"ERROR","发现错误了!^_^")
endif
TCPCloseSocket($Socket)
为什么用域名检测端口却是没有打开啊
请高手帮帮我啊

{:face (229):} {:face (229):}

boyhong 发表于 2011-3-20 01:12:17

请你再仔细看一下帮助文件:
TCPConnect
--------------------------------------------------------------------------------
创建一个套接字(socket)连接到已经存在的服务器.
TCPConnect ( IP地址, 端口)


是IP地址,不是域名。
你若非要用域名,可以先:TCPNameToIP ( 域名 ) 一下即可。

boyhong 发表于 2011-3-20 01:14:03

本帖最后由 boyhong 于 2011-3-20 01:15 编辑

回复 1# bj17209

这样就可以了:TCPStartUp()
$Socket = TCPConnect(TCPNameToIP("www.baidu.cn"), 80)
If $socket <> 1 and $socket <>-1 and $socket <>2 Then
msgbox (32,"OK","端口是开放的!^_^")
Else
msgbox (16,"ERROR","发现错误了!^_^")
endif
TCPCloseSocket($Socket)
TCPShutdown()

bj17209 发表于 2011-3-20 10:47:25

好好,晓得了啊,谢谢了啊

xgysww 发表于 2011-3-21 12:29:09

谢谢了,多学了一下函数, tcpstartup(),tcpconnet(),及tcpshutdown()
页: [1]
查看完整版本: 已解决:如何用域名查询端口是否打开!