Delphi编写的即时通信程序,类似QQ聊天,源码内包括了控件补盯配置方法说明和各个模块的代码等。
一个自我感觉很好的通信程序,它的特点:
1.数据包格式全部自己定义。
所有的定义和通信核心类全部在COMM文件夹中。
2.能处理大量客户端同时通信的情况,客户和服务端共用相同的通信对象,并且可以实现互传。
3.通信细节全部封装在几个通用的类中,隐藏了交互通信的所有处理细节,如断包处理,超时重发等功能。
4.数据通信和数据具体应用完全分离,扩展性良好,本例中只做一个上传文件的例子,你可以在不用改动通信核心的情况下,可以实现远程控制所需的任何功能,并且不需要考虑通信细节。具体方法可以参考:CommSrvApps 单元的TSrvApp_File类,只需写一个新类即可:
TSrvApp_File = class(TServerAppObject)
public
function ProcessData(ABuf: PChar; ASize: integer): integer; override;
end;
通过以上类配合通信核心类,实现了远程实时传送一个文件就像copy那么简单。
其它:
此程序是我自己开发的连锁超市方案中数据交换的应用实例,所以客户端和服务端的代码有点多,但多是与通信本身无关,所实现的功能是将本地Local文件夹与远程Remote文件夹的.rs文件互相进行传送。
程序配置方法:
1.本程序在Delphi6下编译通过,其它版本没有测试。
2.请先安装"控件补丁"中的控件包。
3.编译Client或Server时,请先设置Search Path指向comm 文件夹。
1