telnet登录路由器,端口号设置问题。(只要回答就有分)
各位朋友``
是这样的`我最近写一个通过telnet登录路由器(router)的程序。有两个问题想请教大家。
使用的控件是winsock连接.
祥细代码会贴到下面。我的问题是。
1.登录比如说telnet 192.168.1.1 23 的时候没有问题。但是我要登陆192.168.1.1 55023 (55023是端口号)的时候怎么也显示不出来。前提是我用开始--运行--telnet 192.168.1.1 55023 的时候是正常的。会提示我输入用户名和密码的。
2.登录成功后.会出现"config#"号提示输入命令。我会下指令查看路由的配置。我怎么判断是否有提示出"config#"号字符.然后比如说我下"show"命令.会显示出结果。我怎么可以不显示我输入的命令。只显示结果。
Private Sub Command1_Click()
On Error GoTo 1
Form1.Winsock1.Close
Form1.Winsock1.Connect Text3.Text, Text4.Text
SaveSetting "Telnetclient", "Last", "Server", Text1.Text
SaveSetting "Telnetclient", "Last", "Port", Text2.Text
Exit Sub
1 MsgBox Err.Description, vbCritical
Form1.Winsock1.Close
End Sub
Private Sub Form_Load()
a = GetSetting("Telnetclient", "Last", "Server", "")
If a = "" Then
Else
End If
Text3.Text = GetSetting("Telnetclient", "Last", "Server", "")
Text4.Text = GetSetting("Telnetclient", "Last", "Port", 23)
End Sub
Private Sub Text1_Change()
Text1.SelStart = Len(Text1.Text)
Text2.SetFocus
End Sub
Private Sub Text2_KeyDown(KeyCode As Integer, Shift As Integer)
KeyCode = 0
End Sub
Private Sub Text2_KeyPress(KeyAscii As Integer)
On Error GoTo 1
If KeyAscii = 13 Then
Text2.Text = ""
Winsock1.SendData Chr(13)
KeyAscii = 0
Else
Winsock1.SendData Chr(KeyAscii)
End If
Exit Sub
1 KeyAscii = 0
End Sub
Private Sub Winsock1_Close()
MsgBox "断开连接!"
Winsock1.Close
End Sub
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Winsock1.GetData buffer$, vbString
Text1.Text = Text1.Text & buffer$
End Sub
代码没有问题``我已经测试过了`是OK的 只是当我使用192.168.1.1 55023 的时候显示不出来.
[解决办法]
问题1 telnet 192.168.1.1:23 :号代表端口号吧
[解决办法]
问题2 Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long) 无返回值吗 应该在这里返回