首页 / 软件开发 / C++ / 如何编写用TCP/IP的通讯程序
如何编写用TCP/IP的通讯程序2010-05-24最近在网上不断的看到有人问如何用BCB的TServerSocket和TClientSocket进行编程的问题,所以决定把我的一些编程经验告诉给大家,让大家能够尽快的掌握他们的用法。首先要讲一下他们的一些设置(属性):TServerSocket 的几个属性Active是否是工作状态,可以把它设置为ture或false来启动和停止侦听。Port本机侦听的端口,可以设置为一大于1024的数;ServerType服务端的工作方式,有两个选择,一个是stNonBlocking 非阻塞方式,一个是stThreadBlocking线程阻塞方式,默认是非阻塞方式。用非阻塞方式编程比较简单(我个人认为),用阻塞方式对每个连接必须自己用线程来控制收发。ThreadCacheSize缓冲的线程个数 当ServerType是stThreadBlocking时有效。TClientSocket的几个属性Active是否是工作状态,可以把它设置为ture或false来同服务端建立或断开连接。Host服务器(ServerSocket)的计算机名,是一个字符串Address服务器(ServerSocket)的IP地址ClientType客户端的工作方式一种是ctNonBlocking非阻塞方式,一种是ctBlocking阻塞方式,默认是非阻塞方式Port同服务端(ServerSocket)连接的端口,这个端口就是ServerSocket的侦听端口在设置ClientSocket的(Host)主机名和设置(Address)IP地址是等效的,但设主机名需要网络具有DNS(域名解析服务)服务器,而且设主机名要比设主机的IP地址连接的速度慢一些。建议用Address来同ServerSocket进行连接。设置好所有的属性后,ServerSocket控件就可以通过将它的Active属性置为true来进行侦听了。ClientSocket可以通过设置它的Active属性来同ServerSocket进行连接。连接成功就可以进行通讯了。在这个过程中会产生一些事件,下面说说他们各自的事件。