- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
在VB中使用Winsock实现通信
在VB中使用Winsock实现通信2007-12-11 10:08:35|???????最近刚接触VB,学习了用Winsock创建聊天应用程序。下面的实例分别用TCP协议和UDP协议实现通讯。1. 选择通讯协议的标准????? 在使用WinSock控件时,可以使用的协议包括TCP和UDP。两种协议之间的重要区别在于它们的连接状态:a).TCP协议控件是基于连接的协议,可以将它同电话系统相比。在开始数据传输之前,用户必须先建立连接。b).UDP协议是一种无连接协议,两台计算机之间的传输类似于传递邮件:消息从一台计算机发送到另一台计算机,但是两者之间没有明确的连接。2. Winsock控件使用TCP协议?????? 如果应用程序要使用TCP协议,那么首先必须决定应用程序是服务器还是客户端。如果要创建一个服务器端,那么应用程序需要“监听”指定的端口。当客户端提出连接请求时,服务器端能够接受请求并建立连接。在连接建立之后,客户端与服务器端可以自由地互相通讯。?2.1 TCP服务器端??窗体设计:为窗体添加如下的代码:???? ?Private Sub Form_Load()??? 设置本地端口号为6000??? Winsock1.LocalPort = 6000??? 打开监听??? Winsock1.ListenEnd SubPrivate Sub Winsock1_ConnectionRequest(ByValRequestID As Long)??? Dim myStr As String??? 如果当前状态处于连接状态,则先关闭连接,再接收新的请求??? If Winsock1.State sckClosed Then?????? myStr = MsgBox(客户请求建立连接,是否允许?, vbOKCancel)?????? If myStr = vbOK Then?????? 关闭连接?????? Winsock1.Close?????? 接收客户请求,建立连接?????? Winsock1.Accept RequestID?????? Winsock1.SendData 接收?????? MsgBox 与客户建立了新连接?????? End If??? End IfEnd SubPrivate Sub Winsock1_DataArrival(ByValbytesTotal As Long)??? Dim myStr As String??? 调用GetData方法接收数据??? Winsock1.GetData myStr??? Text2.Text = myStrEnd SubPrivate Sub Winsock1_Close()??? Winsock1.Close??? Winsock1.Listen??? MsgBox 与客户断开连接End SubPrivate Sub Text1_Change()??? 当服务器端的文本框中的内容发生变化时,使用SendData方法发送信息??? Winsock1.SendData Text1.TextEnd Sub2.2 TCP客户端????????????窗体设计:为窗体添加如下代码:Private Sub Form_Load()??? Text1 = 192.168.1.22??? Text2 = 6000End SubPrivate Sub Command1_Click()??? If Winsock1.State = sckClosed Then??? 设置服务器的IP地址??? Winsock1.RemoteHost = Trim(Text1.Text)??? 设置服务器的端口号??? Winsock1.RemotePort = Trim(Text2.Text)??? 发出连接请求??? Winsock1.Connect??? End IfEnd SubPrivate Sub Winsock1_DataArrival(ByValbytesTotal As Long)??? Dim myStr As String??? 调用GetData方法接收数据??? Winsock1.GetData myStr??? Text4.Text = myStr??? Option1.Value = TrueEnd SubPrivate Sub Winsock1_Close()????? Winsock1.Close????? Option2.Value = TrueEnd SubPrivate Sub Text3_Change()??? 当txtSend控件的内容发生变化时,调用SendData将信息传送给主机??? Winsock1.SendData Text3.TextEnd
您可能关注的文档
- 六年级奥数阴影图形面积(三角形专练).docx
- 兰黎明实践以人为本打造和谐班级.doc
- 共享单车中考大热点.docx
- 关于VB语言和怎样学习VB.docx
- 八年级物理力与运动组卷二28.doc
- 关于中午夜间需要连续施工的报告.doc
- 关于企业经营中的股东纠纷.doc
- 关于以人为本的教育.doc
- 关于体检和疫苗接种.doc
- 关于山西五麟使用脱苯脱萘油的可行性报告.doc
- 译林版高中英语必修第三册全册同步教学课件(2025年7月修订).pptx
- 2024年新人教版七年级上册数学教学课件 1.2.3 相反数.pptx
- 2024年新冀教版七年级上册数学课件2.3 线段长短的比较.pptx
- 2024年新人教版一年级数学上册课件 第四单元 11~20的认识 课时2 11~20的认识.pptx
- 2024秋新人教版数学一年级上册课件 第四单元 10~20的认识第2课时 11~20的认识.pptx
- 2024年秋季新人教版PEP版3年级上册英语全册教学课件.pptx
- 2024年秋季新外研版3年级上册英语课件 Unit 2 第6课时(Wrap up) .pptx
- 2024年秋季学期新湘教版7年级上册地理课件 第4章 探究与实践 保护世界文化遗产.pptx
- 2024年新人教版七年级上册数学课件 5.3.1 产品配套问题与工程问题.pptx
- 2024年秋新冀教版英语三年级上册课件 unit 3 Unit review.pptx
文档评论(0)