![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
DELPHI-Diocp
吹口哨的兔子
什么事都不是一步到达的
展开
-
Diocp学习笔记 1、通讯传值(DELPHI 通讯框架)
一、传输事例里的客户端与服务端是通过自定义的的数据结构进行传输(事例里带的 TSimpleMsgPack)创建:CMDObject: TSimpleMsgPack;添加值:1》CMDObject.Clear;CMDObject.ForcePathObject('cmdIndex').AsInteger := 5;读取值:1》vReqUserID := AMs...原创 2019-03-14 10:21:15 · 1341 阅读 · 0 评论 -
DELPH Try使用方法
1、普通的异常处理方法 try //在这一步出错了 except on e:Exception do //捕获异常 begin showMessage(e.message); end; end;2、主动抛出异常,并自定义异常名称 try raise exception.create('发现异常'); //在try语句块中抛出一个异...原创 2019-03-18 22:54:06 · 407 阅读 · 0 评论 -
Diocp学习笔记 3、服务端连接、发送、接收(以实际例子记录)(DELPHI 通讯框架)
服务器通过TDiocpCoderTcpServer类进行创建,并设置相应值一、创建服务var FTcpServer: TDiocpCoderTcpServer; //声明全局变量//创建服务procedure TfrmServer.FormCreate(Sender: TObject);begin FUILocker := TIocpLocker.Create('界面异步操作锁...原创 2019-03-15 21:57:03 · 1583 阅读 · 0 评论 -
Diocp学习笔记 5、注册客户端类 TIOCPCoderClientContext (TMyClientContext的引用)
在事例里TMyClientContext多处用到了self操作,或者Self.WriteObject(pvObject)操作,最开始不太明白,实际上是服务端在运行时注册了客户端类如下FTcpServer.RegisterContextClass(TMyClientContext); // 注册客户端Context那么程序在接收到消息时,会创建一个客户端的类TMyClientContext,...原创 2019-03-15 21:47:34 · 430 阅读 · 0 评论 -
Diocp学习笔记 2、会话管理(DELPHI 通讯框架)
会话管理是指客户端连接服务端后建立的会话,在后面服务端对客户端进行操作时通过会话找到相应客户端进行消息的发送,下线的处理(客户端因只对服务端。所以无会话机制只有一个连接)介绍:会话调用的是TSessionItem 类 ,并在此基础上增加相应功能,在程序事例里创建的TChatSession类的会话,并在里面增加了对应的连接、消息内容(可以看通讯传值),创建销毁等操作Self 是当前正在操作的会...原创 2019-03-15 21:43:58 · 608 阅读 · 0 评论 -
Diocp学习笔记 4、客户端连接、发送、接收(DELPHI 通讯框架)
客户端是通过建立 TIocpCoderRemoteContext 类对服务器进行连接操作,传输的值。以通讯传值类进行传递1、创建连接在全局变量处创建var DiocpContext: TIocpCoderRemoteContext;2、启动连接 DiocpContext.Host := '192.168.127.130'; DiocpContext.Port := 605...原创 2019-03-15 09:03:03 · 1613 阅读 · 0 评论 -
Diocp学习笔记
没有自己开发直接使用的是框架内的DEMO进行研究修改学习使用的是通讯框架下面地址https://download.csdn.net/download/z123191456/11021119里面的diocp-v5-master\samples\ChatDEMO By 彩蛋 DEMO进行的学习。...原创 2019-03-14 10:37:25 · 898 阅读 · 0 评论 -
Diocp学习笔记6、通过JSON 字符串传输(DELPHI 通讯框架)
1、客户端发送数据var lvJsonStream: TJsonStream; SS: AnsiString; lvStream:TMemoryStream;begin //创建JSON类,并生成数据 lvJsonStream := TJsonStream.Create; lvJsonStream.Json.I['cmdIndex'] := 11; ...原创 2019-03-29 09:49:09 · 1089 阅读 · 0 评论