你好,欢迎来到电脑编程技巧与维护杂志社! 杂志社简介广告服务读者反馈编程社区  
合订本订阅
 
 
您的位置:技术专栏 / Linux开发
用VB编写网络寻呼机(2)
 

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 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
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地址进行连接,则两者的连接速度将会有大幅度的提高

(编辑:aniston)

  推荐精品文章

·2024年12月目录 
·2024年11月目录 
·2024年10月目录 
·2024年9月目录 
·2024年8月目录 
·2024年7月目录 
·2024年6月目录 
·2024年5月目录 
·2024年4月目录 
·2024年3月目录 
·2024年2月目录 
·2024年1月目录
·2023年12月目录
·2023年11月目录

  联系方式
TEL:010-82561037
Fax: 010-82561614
QQ: 100164630
Mail:gaojian@comprg.com.cn

  友情链接
 
Copyright 2001-2010, www.comprg.com.cn, All Rights Reserved
京ICP备14022230号-1,电话/传真:010-82561037 82561614 ,Mail:gaojian@comprg.com.cn
地址:北京市海淀区远大路20号宝蓝大厦E座704,邮编:100089