- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
CBuilder网络编程系列讲座第一讲:TServerSocket和TClientSocket的使用
C++Builder网络编程系列讲座第一讲:TServerSocket和TClientSocket的使用
作者:hxfwsk
email: hxfwsk@
日期:6/15/2001 7:28:35 PM
TServerSocket和TClientSocket的使用 [H5]C++Builder网络编程系列之一[/H5][H4]TServerSocket和TClientSocket的使用[/H4]
在网络编程中,WinSocket API编程是最基本,也是最麻烦的地方(说句不怕影响形象的话,我对此就是一知半解)。但是,如果你是使用C++Builder作为编程平台,你就偷着乐吧,有了BCB,菜鸟变高手!:-)
在BCB中,TServerSocket和TClientSocket涵盖了基本的WinSocket编程,其中TServerSocket作为服务器方使用,TClientSocket作为客户端使用,这两个组件本身并不提供Socket连接,但是他们都有一个Socket属性,这个属性才提供了Socket连接。下面就先向大家介绍一下这两个组件常用的方法属性,然后在通过一个例子来看看这两个组件的使用。[H5]1)TServerSocket[/H5][TABLE][TR][TD]名称[/TD][TD]类型[/TD][TD]说明[/TD][/TR][TR][TD]Socket[/TD][TD]TServerWinSocket[/TD][TD]最重要的属性,提供Socket连接,事实上发送/接收数据都要靠这个属性,下面还有详细的介绍。[/TD][/TR][TR][TD]Port[/TD][TD]int[/TD][TD]要监听的端口,如果在Service属性中指定了服务类型,此属性将被忽略。[/TD][/TR][TR][TD]Service[/TD][TD]AnsiString[/TD][TD]提供的服务,如HTTP、FTP等,如果在这里指定了服务类型,Port将被忽略,因为各种服务都有特定的端口,如FTP:21、HTTP:80[/TD][/TR][TR][TD]ServerType[/TD][TD]TServerType[/TD][TD]设置与客户连接的方式,取值为两个枚举常量stNonBlocking和 stThreadBlocking,stNonBlocking表示用非阻塞方式连接每一个客户,每个连接都在一个单独的线程中处理。并用OnClientRead()和OnClientWrite()通知服务器端的Socker进行读写。 stThreadBlocking表示以阻塞方式连接客户,即以主动查询的方式可客户连接。[/TD][/TR][TR][TD]Active[/TD][TD]bool[/TD][TD]激活服务,相当于调用Open()方法。[/TD][/TR][TR][TD]OnAccept[/TD][TD]事件[/TD][TD]当有客户请求连接时触发[/TD][/TR][TR][TD]OnClientRead[/TD][TD]事件[/TD][TD]通知服务器去读取有关信息。OnClientWrite与此类似。[/TD][/TR][/TABLE][H5]2)TClientSocket[/H5][TABLE][TR][TD]名称[/TD][TD]类型[/TD][TD]说明[/TD][/TR][TR][TD]Socket[/TD][TD]TClientWinSocket[/TD][TD]同TServerSocket[/TD][/TR][TR][TD]Active[/TD][TD]bool[/TD][TD]同TServerSocket[/TD][/TR][TR][TD]Address[/TD][TD]AnsiString[/TD][TD]服务器的IP地址,如4[/TD][/TR][TR][TD]ClientType[/TD][TD]TClientType[/TD][TD]与服务器连接方式,取值为两个枚举常量ctNonBlocking,tBlocking。ctNonBlocking表示非阻塞方式,ctBlocking表示阻塞方式,详见上例。[/TD][/TR][TR][TD]Host[/TD][TD]AnsiString[/TD][TD]要连接的主机名,如[/TD][/TR][TR][TD]Port[/TD][TD]int[/TD][TD]同TServerSocket[/TD][/TR][TR][TD]Service[/TD][TD]AnsiString[/TD][TD]同TServerSocket[/TD][/TR][TR][TD]OnConnect[/TD][TD]事件[/TD][TD]当连接时发生,OnConnecting、OnDisConne
文档评论(0)