。。。。。。。。。。。。 (1分)

  • 主题发起人 主题发起人 陈一蛟
  • 开始时间 开始时间

陈一蛟

Unregistered / Unconfirmed
GUEST, unregistred user!
。。。。。。。。。。。。
 
说白了,就是:
Sig: Integer;
4 Byte
Len: Integer;
4 Byte
Content: array [0..Len - 1] of Byte;
Sig通过CallSig为mask,标识当前数据包的类型。
Sig分两类
一种是CallSig,意指Client端向Server发送请求包;
一种是ResultSig,是Server响应Client返回的数据包;
asInvoke...asSoapCommand之类的为请求包或返回包的标识,只要将它将Sig进行and操作,就可以知道当前包的标识是什么,并且是请求(CallSig)还是返回(ResultSig)
TDataBlock只是封装数据包所有操作 Read/Write,并不管里面的内容如何。
TDataInterpreter对TDataBlock的里面数据进行解析,它分解出DataBlock.Signture,将它进行与asMask进行and操作后,就可以知道当前数据包的是需要进行什么操作,然后解析出DataBlock具体的数据,作为给TStreamConnection父类调用参数。
 
。。。。。。。。。。
 
后退
顶部