📄 zrdatastru.~pas
字号:
unit ZRDataStru;
interface
uses
Windows,SysUtils,winsock;
type
TZRMsgHead=packed record
MsgLen,
MsgID,
SeqNum:Cardinal;
end;
{Connect}
TZRConnectBody=packed record
LoginName:array[0..11] of char;
LoginPwd:array[0..11] of char;
end;
TZRConnect=packed record
MsgHead:TZRMsgHead;
MsgBody:TZRConnectBody;
end;
TZRConnectResp=packed record
MsgHead:TZRMsgHead;
Stat:byte;
end;
{Submit}
TZRSubmitBody=packed record
SPNum,
FeePhone,
SendPhone,
AcptPhone,
MsgType,
SerID:string;
MoFlg:byte;
ExpireTime,
AtTime:string;
RptFlg:byte;
MsgLen:Cardinal;
MsgCon,
Reserve:string;
end;
TZRSubmit=packed record
MsgHead:TZRMsgHead;
MsgBody:TZRSubmitBody;
end;
TZRSubRespBody=packed record
Stat:byte;
MsgID:cardinal;
end;
TZRSubmitResp=packed record
MsgHead:TZRMsgHead;
MsgBody:TZRSubRespBody;
end;
{Deliver}
TZRDeliverBody=packed record
SpNum,
SendPhone:string;
MsgLen:Cardinal;
MsgCon,
Reserve:string;
end;
TZRDeliver=packed record
MsgHead:TZRMsgHead;
MsgBody:TZRDeliverBody;
end;
TZRDeliverResp=TZRMsgHead;
{Report}
TZRReportBody=packed record
SubRespMsgID:Cardinal;
Stat:byte;
end;
TZRReport=packed record
MsgHead:TZRMsgHead;
MsgBody:TZRReportBody;
end;
TZRReportResp=TZRMsgHead;
{ActiveTest}
TZRActiveTest=TZRMsgHead;
TZRActiveTestResp=TZRMsgHead;
ZRStandard=class
public
class procedure MsgHead(var MsgHead:TZRMsgHead);
class procedure Bind(var BindStru:TZRConnect);
end;
implementation
{ TZRStandard }
class procedure ZRStandard.Bind(var BindStru: TZRConnect);
begin
MsgHead(BindStru.MsgHead);
end;
class procedure ZRStandard.MsgHead(var MsgHead: TZRMsgHead);
begin
MsgHead.MsgLen:=htonl(MsgHead.MsgLen);
MsgHead.MsgID:=htonl(MsgHead.MsgID);
MsgHead.SeqNum:=htonl(MsgHead.SeqNum);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -