- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Delphi的Socket编程详解
Delphi的Socket编程详解
ClientSocket 和ServerSocket
几个重要的属性:
1.client和server都有port属性,需要一致才能互相通信
2.client有Address属性,使用时填写对方(server)的IP地址
几个重要的事件:
client:OnRead事件,当client收到消息时在OnRead事件中可以获得server发送过来消息。
Server: OnClientRead事件,与上述client的作用相同
发送信息:
clien使用SocketClient1.Socket.SendBuf(char类型的数组,信息长度);
server使用SocketServer1.Socket.Connection[0].SendBuf(char类型的数组,信息长度);
接收信息
clien使用SocketClient1.Socket.ReceiveBuf(char类型的数组,信息长度);
server使用SocketServer1.Socket.Connection[0].ReceiveBuf(char类型的数组,信息长度);
使用sockets:
Socket 控件让你建立一个利用TCP/IP和有关的协议与其他系统进行通信的应用。使用Sockets,你能够读和写通过它连接的其他机器,而不用担心实际的网络软件的相关细节。Sockets提供基于TCP/IP协议的连接。
Delphi 提供通过网络服务器或客户应用程序去读和写其他的系统的功能。一个服务或客户程序通常专注于一个单一的服务,如超文本传送协议(HTTP)或文件传输协议(FTP)。使用server sockets,一个应用程序可以通过这些服务中的一个去连接一个希望使用服务的客户程序。Client sockets允许一个应用使用这些服务中的一个去连接提供这个服务的服务应用。
使用sockets去写应用程序,你必须理解下面这些知识:
一、服务工具
当你需要写网络服务或客户应用时,Sockets提供一种接合。对于许多服务,象HTTP 或 FTP,第三方服务商提供这些服务已经相当有效。有些甚至随着操作系统捆绑而来,以便不用你自己写。然而,当你想更多的控制服务的实现,比如想让你的应用程序与网络通信更加紧密,或当没有一个服务能提供你特殊需要的服务时,你可能想建立你自己的服务或客户应用。例如,工作在分布式data sets时,你可能想为数据库写一层与其他系统通信的应用。想使用Sockets实现一个服务,你必须理解:
1.服务协议
在你写一个网络服务或客户程序前,你必须明白你的应用将提供或使用什么服务。你的网络应用必须支持许多服务的标准协议。如果你为标准的服务例如HTTP,FTP写网络应用,你必须先理解与其他系统通信所使用的协议。特殊服务细节你必须看提供的或使用的文档。
如果你的应用程序提供一个新的服务与其他系统通信,第一步是为这个服务的服务端和客户端设计通信协议。什么信息将发送?如何整理这些信息?如何对这些信息进行编码?
应用程序通信
经常的,你的网络服务端或客户端应用程序要提供一层在网络软件和一个应用之间使用的服务。例如,一个HTTP服务站点在internet与一个Web 服务应用之间为HTTP请求信息提供内容和应答。
在你的网络应用(或客户应用)和网络软件之间Sockets 提供一个接口。你必须提供一个接口,在你的应用程序与应用间使用。你可以拷贝第三方服务商提供的标准API(例如ISAPI),或你可以设计和发布你自己的API.
2.理解服务和端口
许多标准服务都有关联的、指定的端口号。当执行服务时,你可以为服务考虑一个端口号。如果你实现一个标准服务,Windows socket objects 提供一些方法让你为服务寻找端口号。如果提供一个新的服务,在基于Windows 95 或 NT机器上,你能够在文件Services中为你的服务指定一个相关联的端口号。设置Services文件的更多信息请看微软的Windows Sockets文档。
二、Socket连接的类型
Socket连接可以分成三个基本的类型,它们反映了如何开始连接和本地Socket 连接是什么。这三个类型是:
1.客户端连接
客户端连接是一个本地系统的客户端socket与一个远程系统上的服务端Socket连接。客户端连接由客户端Socket开始。首先,客户端Socket必须描述它想连接到的服务端Socket. 接着客户端socket查找服务端socket,当找到服务器时,就要求连接。服务端socket可能不
文档评论(0)