当前位置: 网学 > 编程文档 > VB > 正文

如何用VB编写网络寻呼

来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/16
下载{$ArticleTitle}原创论文样式
pServer(i)
    tcpServer(i).LocalPort = CurUser(i).ClientPort - 1
    tcpServer(i).Accept requestID
    Exit For
   ElseIf CurUser(i).ClientConnected = False Then
    Load tcpServer(i)
    tcpServer(i).LocalPort = Port
    If tcpServer(i).State <> sckClosed Then
     tcpServer(i).Close
    End If
    tcpServer(i).Accept requestID
    Exit For
   End If
   Next DoEvents
   ''测试连接是否成功
   If tcpServer(i).State = sckConnected Then
    If i = tcpIndex Then
    ''已经没有可用端口,记录客户的IP地址和端口号
    tcpIndex = tcpIndex + 1
    Port = Port + 1
    ReDim Preserve CurUser(tcpIndex)
    CurUser(i).ClientIP = tcpServer(i).RemoteHostIP
    CurUser(i).ClientConnected = True
    CurUser(i).ClientPort = Port
    CurUser(tcpIndex).ClientConnected = False
   Else
    CurUser(i).ClientIP = tcpServer(i).RemoteHostIP
    CurUser(i).ClientPort = Port
    CurUser(i).ClientConnected = True
   End If
  End If
  Exit Sub
 ErrHandle:
  Resume Next
  ''检查控件的 State 属性,如未关闭,在接受新的连接之前关闭此连接。
  If tcpServer(0).State <> sckClosed Then
   tcpServer(0).Close
   tcpServer(0).Accept requestID ''接受具有 requestID 参数的,连接。
  End If
 End Sub

 Private Sub tcpServer_DataArrival(Index As Integer, ByVal bytesTotal As Long)
  Dim i As Integer
  Dim s As String
  Dim RequID As Long ''主叫方ID号码
  Dim SearchID As Long ''被叫方ID号码
  On Error GoTo ErrHandle
  tcpServer(Index).GetData s, vbString ''接收数据并存入s 
  If Mid(s, i, 1) = "@" Then
  ''分离s中的主叫方和被叫方ID号码
   SearhID = Left(s, i - 1) ''把号存入mKey
   RequID = Right(s, Len(s) - i) ''ID存入RequID
  End If
  ''如果是请求寻呼某一ID号码,则检索当前此ID用户是否登录(即CurUser数组中是否存在此用户),然后发送信息,通知此用户响应呼叫并显示主叫用户ID号码。
  For i = 1 To tcpIndex
   If RequID = CurUser(i).ClientID And CurUser(i) .ClientConnected = True Then
    tcpServer(i).SendData (SearhID)
   End If
  Next
  Exit Sub
 Sub ErrHandle:
  If Err.Number = sckBadState Then ''连接不正确
   CurUser(i).ClientConnected = False
   CurUser(i).ClientIP = ""
   Unload tcpServer(i)
   Resume Next
  End If
End Sub


  本程序仅提供了用Visual Basic 编写网络寻呼的思路和主要部分的实现过程,至于主叫方和被叫方建立连接后的通信并未扩展,读者若有兴趣,可在这方面加入具体的实现代码,就可以给本程序增加更多的功能,如实时聊天,语音对话等。如果在服务器程序检索到被叫方时,分别通知两者客户端程序,使主叫方和被叫方直接利用IP地址进行连接,则两者的连接速度将会有大幅度的提高。

  • 上一篇资讯: 用VB获取桌面图象
  • 下一篇资讯: 用VB开发即时战略游戏
  • 网学推荐

    免费论文

    原创论文

    浏览:
    设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
    版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
    湘ICP备09003080号