VB网络编程中Winsock的使用-jy.docVIP

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
VB网络编程中Winsock的使用 如同上面的内容所描述的,不论您使用UDP协议或是TCP协议,Winsock控件都可以允许与远程的设备连接,并且在相互之间交换数据。因此,依据上面的面熟而言,不论您使用的是哪一种协议都可以扮演主机端和客户端的角色。 同时,当您在使用Winsock控件的过程中,这个控件不会显示在正在执行的窗体之中。换句话说,Winsock控件是在后台运行的一种控件。在执行过程之中,不会具有任何选用、可见的控件。那么该如何使用Winsock控件呢?它可以被应用在那些类型的应用程序之中呢?以下所列出的内容,是这个控件可以应用的大致范围: *将客户端所收集的数据,传送给主机端。 *点对点的文件传送。 *聊天室应用程序。 *电子公告栏。 *voip(voice over TCP/ip) 因此,当您希望建立上述类型的应用程序之前,必须要学习如何选用适合的协议类型。 2-1如何选用适用的协议 当您准备开始使用Winsock控件之前,首要的工作是如何选择适用的协议类型。如同先前所述的,您可以选择TCP 协议或是UDP协议中的一种。但是这两种协议的差异点在哪里呢?虽然,它们同样可以使用在Internet或是Internet环境之中,但是主要的差异在于连接的状态。以下是这两种协议的特点说明: *TCP协议是属于面向连接的协议。所谓的面向连接协议是指——“在您可以交换数据之前,在两个终端设备之间必须连接成功”。同时,在网络的基础理论之中,都会特别强调TCP具有错误核对的功能。也就是说,在数据的传送过程中,如果发生错误或是数据无法传达对方时,TCP协议将会重复尝试着重新传送数据。因此,核对以及重新传送的能力,因此起传输效率会比Internet协议或是巨域网络协议差一些(netBIEUI、IPX、AppleTalk)。 *UDP协议是属于无面向连接协议。这种协议为适用在两个设备之间,适用于信息传送以及数据的传输方面。但是在使用时,必须注意当你将信息送出时,对方可能已经离线,因而无法接收到数据,而您也无法实时察觉到对方已经离线。此外,使用UDP协议的最大数据传送量,完全取决于网络的传输量。因此,此种协议较为适用于局域网络。 因此,当您在建立应用程序并且选用适当的协议之前,务必先依据应用程序使用的环境来选择适用的协议。 2-2设置协议 当已经选择好适当的协议之后,接下来,将必须要设置协议的类型。在Visable Basic之中,共有两种设置协议的方式:“修改属性窗口”以及“程序代码设置”。以下是这两种设置方式的说明。 *修改属性窗口(见图2-1) *程序代码设置 Winsock1.Protocol=sckTCPProtocol 3.TCP连接的基础 在使用TCP协议来建立应用程序的过程中,首先必须决定应用程序是属于主机端 是客户端来决定应用程序所扮演的角色问题。因此,在建立应用程序的过程中,如果您选择“主机端”时,主机端的Winsock控件必须将特定的连接端口号设置在监听模式之中。同时,在客户端提出连接的请求时,主机端可以允许客户端的连接请求,并且完成连接的程序。 因此,一旦主机端与客户端连接成功之后,在这个部设备之间即可开始传送数据,以下的程序代码,具有TCP连接的基本聊天室功能。 3-1TCP连接范例 在此笔者只做简单的-程序介绍, ?frmserver窗体的设计内容 如图3-1所示 ?frmserver的程序代码 private sub form_load() ‘设置本机连接端口的localport属性的内容 ‘请注意!必须是整体值 tcpserver.LocalPort=2000 ‘将本机连接端口设置为监听模式 tcpserver.Listen Me.Caption=”frmsever” Label1.Caption=”传送的文字“ Label2.Caption=”接收的文字“ ‘打开frmclient窗体 frmClient.Show end sub private sub tcpserver_connectionrequest(byval requestid as long) ‘如果tcpserver 控件的状态目前不是处于关 ‘闭的状态时,在允许远程设备连接时,必须要关闭目前的控制的运行 if tcpserver.statesckclosed then tcpserver..close ‘允许远程设备使用必要的识别码(requestid)与主机进行连接 tcpserver.accept requestid end sub private sub txtsend_change() ‘当txtsend控件的内容发生变化时,将txtsend控件的内容,通过tcpserver控件senddata方 ‘法,将txtsend控件的内容传

文档评论(0)

82393aa + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档