以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  关于telnet类似实现方案?  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=62398)

--  作者:luodang2050
--  发布时间:2014/12/31 10:08:00
--  关于telnet类似实现方案?
如题,搭建了服务器,并在网关上绑定了两个域名,服务器采用端口映射。
客户端连接时,先优先测试域名1,测试流程(先采用tryconnecthost测试域名是否可以解析,再采用ping测试域名是否可以连通)
但如果路由器正常而服务器挂掉的话,测试结果正常,服务器肯定是连接不上的,此种问题应该怎么解决?如果能够类似telnet测试端口就好了。

--  作者:rjh4078
--  发布时间:2014/12/31 10:38:00
--  
恩  所以程版上次那个方案只能解决部分问题  我遇到的问题和你的一样  暂时没有好的思路 除非等官方出socket
--  作者:有点甜
--  发布时间:2014/12/31 10:59:00
--  

 直接尝试连接数据库呗。

 

http://www.foxtable.com/help/topics/1944.htm

 


--  作者:luodang2050
--  发布时间:2014/12/31 11:08:00
--  
田版,这个直连感觉效率很低,如果服务器挂掉的话,将测试很久,能否跟ping一样设置超时时间?
--  作者:有点甜
--  发布时间:2014/12/31 11:53:00
--  

 如下,引入telnet类库,就可以用了。

 

    

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:telnet例子.rar


--  作者:luodang2050
--  发布时间:2014/12/31 14:49:00
--  
田版,你好,那telnet例子打开提示:未定义数据类型“telnet.terminal”
--  作者:luodang2050
--  发布时间:2014/12/31 14:55:00
--  
已经解决了,重新引用下就可以了,谢谢
--  作者:luodang2050
--  发布时间:2014/12/31 15:09:00
--  
测试还是不成功,原因为telnet登陆后只有浮动光标,没有“login:”提示,此种情况应该怎么判断呢?
Dim tn As new Telnet.Terminal("127.0.0.1", 1433, 5, 0, 0) \'hostname, port, timeout [s], width, height
tn.Connect()
Dim f As String = tn.WaitForString("Login:")
If f = Nothing Then
    msgbox("不成功")
Else
    msgbox("成功")
End If
\'tn.SendResponse("admin", True) \'send username
tn.Close()

--  作者:有点甜
--  发布时间:2014/12/31 15:49:00
--  

红色代码改成你连接成功会出现的字符啊

 

Dim f As String = tn.WaitForString("Login:")


--  作者:luodang2050
--  发布时间:2014/12/31 15:57:00
--  
界面不返回任何信息,所以没有字符可判断,重新修改为以下代码就可以了,但是timeout超时时间设置了怎么无效呢?
Dim tn As new Telnet.Terminal("192.168.10.2", 1433,5, 0, 0) \'hostname, port, timeout [s], width, height
Dim f As Boolean = tn.Connect
\'Dim f As String = tn.WaitForString("Login:")
If f = Nothing Then
    msgbox("不成功")
Else
    msgbox("成功")
End If
\'tn.SendResponse("admin", True) \'send username
tn.Close()