⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 30.htm

📁 网络编程原理文摘 [文件] 精华区目录结构 [目录] 网络编程的基本原理 [目录] 网络编程与网络协议 [目录] 网上资源 [目录] winsock技术 [目录
💻 HTM
字号:
<HTML><HEAD><TITLE>CTerm非常精华下载</TITLE>
<META content="text/html; charset=gb2312" http-equiv=Content-Type></HEAD>
<BODY bgColor=#ffffff>
<TABLE border=0 cellPadding=0 cellSpacing=0 width=100% background=0044.jpg>
  <BODY>
  <TR>
    <TD height=150 rowSpan=2 width="308" ><IMG alt=DDl_back.jpg height=129 width=300 src="DDl_back.jpg" ></TD>
    <TD background=DDl_back2.jpg height=50 width="581" ><BIG><BIG><FONT face=黑体>
      <P align=center >重拳出击  一网打尽</FONT></BIG></BIG></P></TD></TR>
  <TR>
    <TD bgColor=#0099ff borderColor=#0099ff height=5 width="581"></TD></TR>
  <TR>
    <TD align=middle colSpan=2 height=100 vAlign=top width="891" ><BR>
<p align=center>[<a href="清华bbs网络资源.htm">回到开始</a>][<a href="4.htm">上一层</a>][<a href="31.htm">下一篇</a>]
<hr><p align="left"><small>发信人: wolfsmile (Clever & Stupid ), 信区: Winsock <br>

标  题: Telnet Question! <br>

发信站: BBS 水木清华站 (Thu Nov  5 19:55:18 1998) <br>

  <br>

小弟做TELNET程序,在协商过程之后,总收不到LOGIN的信息,传给我的总是0, <br>

请问大虾,这是为什么? <br>

当收到的是255时,就执行协商,当收到的不是255时,就说明协商过程完了,对吗? <br>

小弟的TELNET程序,在协商过程完了之后,受到的总是0.WHY?????????? <br>

  <br>

小弟请大哥指教!!!!!!!!!! <br>

  <br>

  <br>

-- <br>

※ 来源:·BBS 水木清华站 bbs.net.tsinghua.edu.cn·[FROM: 202.114.64.244] <br>

发信人: chzh (Zhch.nju), 信区: Winsock <br>

标  题: Re: Telnet Question! <br>

发信站: BBS 水木清华站 (Thu Nov  5 21:25:29 1998) WWW-POST <br>

  <br>

把你的源程序贴出来给大家看看是什么毛病. <br>

  <br>

【 在 wolfsmile (Clever & Stupid ) 的大作中提到: 】 <br>

: 小弟做TELNET程序,在协商过程之后,总收不到LOGIN的信息,传给我的总是0, <br>

: 请问大虾,这是为什么? <br>



: 当收到的是255时,就执行协商,当收到的不是255时,就说明协商过程完了,对吗? <br>

: 小弟的TELNET程序,在协商过程完了之后,受到的总是0.WHY?????????? <br>

: 小弟请大哥指教!!!!!!!!!! <br>

  <br>

  <br>

-- <br>

※ 来源:·BBS 水木清华站 bbs.net.tsinghua.edu.cn·[FROM: proxy.nju.edu.cn] <br>

发信人: wolfsmile (Clever & Stupid ), 信区: Winsock <br>

标  题: Re: Telnet Question! <br>

发信站: BBS 水木清华站 (Fri Nov  6 08:57:34 1998) <br>

  <br>

【 在 chzh (Zhch.nju) 的大作中提到: 】 <br>

: 标  题: Re: Telnet Question! <br>

: 发信站: BBS 水木清华站 (Thu Nov  5 21:25:29 1998) WWW-POST <br>

: <br>

: 把你的源程序贴出来给大家看看是什么毛病. <br>

: <br>

: 【 在 wolfsmile (Clever & Stupid ) 的大作中提到: 】 <br>

: : 小弟做TELNET程序,在协商过程之后,总收不到LOGIN的信息,传给我的总是0, <br>

: : 请问大虾,这是为什么? <br>

: : 当收到的是255时,就执行协商,当收到的不是255时,就说明协商过程完了,对吗? <br>

: : 小弟的TELNET程序,在协商过程完了之后,受到的总是0.WHY?????????? <br>



: : 小弟请大哥指教!!!!!!!!!! <br>

: <br>

程序如下: <br>

Private Sub Form_Load() <br>

ws.RemoteHost = "202.112.58.200" <br>

ws.RemotePort = 23 <br>

nego_over = False   '协商过程没有完 <br>

echo = False <br>

End Sub <br>

  <br>

Private Sub ws_DataArrival(ByVal bytesTotal As Long) <br>

  <br>

  <br>

'========================= <br>

  <br>

Dim cmd As Byte, opt As Byte, c As Byte, t As Byte <br>

Dim ls_term As String, ls_get As String <br>

Dim lc_get As Byte <br>

  <br>

Dim mypos As Integer <br>

Dim over As Boolean <br>

  <br>

  <br>

ls_term = "dumb" <br>

If nego_over = False Then 'Negotiation <br>

  over = True <br>

  Do While over <br>

  c = 0 <br>

  ws.GetData c, vbByte <br>

  If c = 255 Then <br>

    ws.GetData cmd, vbByte <br>

    ws.GetData opt, vbByte <br>

    Select Case opt <br>

      Case 1 <br>

        Select Case cmd <br>

         Case 253 <br>

         echo = True <br>

          ws.SendData 255 <br>

          ws.SendData 251 <br>

          ws.SendData 1 <br>

         Case 254 <br>

          ws.SendData 255 <br>

          ws.SendData 252 <br>

          ws.SendData 1 <br>

         Case 251 <br>



         echo = True <br>

          ws.SendData 255 <br>

          ws.SendData 253 <br>

          ws.SendData 1 <br>

         End Select <br>

      Case 3 <br>

      ' <br>

      Case 24 <br>

       If cmd = 253 Then <br>

         ws.SendData 255 <br>

         ws.SendData 251 <br>

         ws.SendData 24   '以下注释掉的以前运行了也不行 <br>

'         ws.SendData 255 <br>

'         ws.SendData 250 <br>

'         ws.SendData 24 <br>

'         ws.SendData 0 <br>

'         ws.SendData ls_term <br>

'         ws.SendData 255 <br>

'         ws.SendData 240 <br>

        Else <br>

          If cmd = 250 Then <br>

            ws.GetData t, vbByte <br>



            Do While t <> 240 <br>

              ws.GetData t, vbByte <br>

            Loop <br>

           End If <br>

        End If <br>

'        Case 36 <br>

'       If cmd = 253 Then <br>

'          ws.SendData 255 <br>

'          ws.SendData 251 <br>

'          ws.SendData opt <br>

'        End If <br>

       Case Else <br>

       If cmd = 253 Then <br>

          ws.SendData 255 <br>

          ws.SendData 252 <br>

          ws.SendData opt <br>

        End If <br>

     End Select <br>

  Else <br>

    over = False <br>

    sle_in.Text = "ok" <br>

    nego_over = True    '协商过程结束 <br>



    If echo Then <br>

      ws.SendData c <br>

    End If <br>

  End If <br>

  Loop <br>

Else      '下面的程序接受数据  ******但是接受不到 <br>

  ws.GetData lc_get <br>

  If echo Then <br>

  ws.SendData lc_get <br>

  End If <br>

  sle_in.Text = sle_in.Text & "  " & lc_get <br>

End If <br>

  <br>

End Sub <br>

  <br>

请妙手回春之高手诊断!!!!!!! <br>

  <br>

-- <br>

※ 来源:·BBS 水木清华站 bbs.net.tsinghua.edu.cn·[FROM: 202.114.64.244] <br>

发信人: chzh (Zhch.nju), 信区: Winsock <br>

标  题: Re: Telnet Question! <br>

发信站: BBS 水木清华站 (Fri Nov  6 15:55:21 1998) WWW-POST <br>



  <br>

呵呵, 你没有注意区分 c 与 basic 的不同, 犯了一个明显的错误. <br>

程序中 ws.SendData 255 等语句实际发出的是 255,0 ,而不是如你 <br>

所想的发出255, 协商自然不对. 正确的方法是使用byte类型. <br>

  <br>

【 在 wolfsmile (Clever & Stupid ) 的大作中提到: 】 <br>

: 程序如下: <br>

: Private Sub Form_Load() <br>

: ws.RemoteHost = "202.112.58.200" <br>

: ws.RemotePort = 23 <br>

: nego_over = False   '协商过程没有完 <br>

: echo = False <br>

: End Sub <br>

: Private Sub ws_DataArrival(ByVal bytesTotal As Long) <br>

: '========================= <br>

: Dim cmd As Byte, opt As Byte, c As Byte, t As Byte <br>

: Dim ls_term As String, ls_get As String <br>

: Dim lc_get As Byte <br>

: Dim mypos As Integer <br>

: Dim over As Boolean <br>

: ls_term = "dumb" <br>

: If nego_over = False Then 'Negotiation <br>



:   over = True <br>

:   Do While over <br>

:   c = 0 <br>

:   ws.GetData c, vbByte <br>

:   If c = 255 Then <br>

:     ws.GetData cmd, vbByte <br>

:     ws.GetData opt, vbByte <br>

:     Select Case opt <br>

:       Case 1 <br>

:         Select Case cmd <br>

:          Case 253 <br>

:          echo = True <br>

:           ws.SendData 255 <br>

:           ws.SendData 251 <br>

:           ws.SendData 1 <br>

:          Case 254 <br>

:           ws.SendData 255 <br>

:           ws.SendData 252 <br>

:           ws.SendData 1 <br>

:          Case 251 <br>

:          echo = True <br>

:           ws.SendData 255 <br>



:           ws.SendData 253 <br>

:           ws.SendData 1 <br>

:          End Select <br>

:       Case 3 <br>

:       ' <br>

:       Case 24 <br>

:        If cmd = 253 Then <br>

:          ws.SendData 255 <br>

:          ws.SendData 251 <br>

:          ws.SendData 24   '以下注释掉的以前运行了也不行 <br>

: '         ws.SendData 255 <br>

: '         ws.SendData 250 <br>

: '         ws.SendData 24 <br>

: '         ws.SendData 0 <br>

: '         ws.SendData ls_term <br>

: '         ws.SendData 255 <br>

: '         ws.SendData 240 <br>

:         Else <br>

:           If cmd = 250 Then <br>

:             ws.GetData t, vbByte <br>

:             Do While t <> 240 <br>

:               ws.GetData t, vbByte <br>



:             Loop <br>

:            End If <br>

:         End If <br>

: '        Case 36 <br>

: '       If cmd = 253 Then <br>

: '          ws.SendData 255 <br>

: '          ws.SendData 251 <br>

: '          ws.SendData opt <br>

: '        End If <br>

:        Case Else <br>

:        If cmd = 253 Then <br>

:           ws.SendData 255 <br>

:           ws.SendData 252 <br>

:           ws.SendData opt <br>

:         End If <br>

:      End Select <br>

:   Else <br>

:     over = False <br>

:     sle_in.Text = "ok" <br>

:     nego_over = True    '协商过程结束 <br>

:     If echo Then <br>

:       ws.SendData c <br>



:     End If <br>

:   End If <br>

:   Loop <br>

: Else      '下面的程序接受数据  ******但是接受不到 <br>

:   ws.GetData lc_get <br>

:   If echo Then <br>

:   ws.SendData lc_get <br>

:   End If <br>

:   sle_in.Text = sle_in.Text & "  " & lc_get <br>

: End If <br>

: End Sub <br>

: 请妙手回春之高手诊断!!!!!!! <br>

  <br>

  <br>

-- <br>

※ 来源:·BBS 水木清华站 bbs.net.tsinghua.edu.cn·[FROM: dii.nju.edu.cn] <br>

发信人: wolfsmile (Clever & Stupid ), 信区: Winsock <br>

标  题: Re: Telnet Question! <br>

发信站: BBS 水木清华站 (Sun Nov  8 19:19:44 1998) <br>

  <br>

【 在 chzh (Zhch.nju) 的大作中提到: 】 <br>

: 呵呵, 你没有注意区分 c 与 basic 的不同, 犯了一个明显的错误. <br>



: 程序中 ws.SendData 255 等语句实际发出的是 255,0 ,而不是如你 <br>

: 所想的发出255, 协商自然不对. 正确的方法是使用byte类型. <br>

: <br>

: 【 在 wolfsmile (Clever & Stupid ) 的大作中提到: 】 <br>

听大哥一席话,胜读21天书。嘻嘻 <br>

多谢多谢! <br>

  <br>

-- <br>

※ 来源:·BBS 水木清华站 bbs.net.tsinghua.edu.cn·[FROM: 202.114.64.244] <br>

</small><hr>
<p align="center">[<a href="清华bbs网络资源.htm">回到开始</a>][<a href="4.htm">上一层</a>][<a href="31.htm">下一篇</a>]<p align="center" ><font face="黑体" size=5><big>网络资源大全</big></font></p> 
</table> 
</body> 
</html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -