?? testqqcommon.pas
字號:
?
+
unit testQQCommon;
interface
//-------------------常量定義---------------------
const
SERVER_PORT = 9001;
CLIENT_PORT = 5001;
IsFalse = '0';
IsTrue = '1';
LogonSign = 1; //注冊信號
HandSign = 2; //握手數據,用于保持會話連接,如網關的NAT端口
FriendDataSign = 3; //好友資料
LogoutSign = 4; //注銷信號
ChatMsgSign = 5; //聊天信息
ChatMsgRecvedSign = 6; //收到聊天信息
//-------------------數據頭定義---------------------
type
TTQQUDPHead = record
MsgType: string[2]; {數據類型}
DataSize: LONGWORD;
end;
//-------------------數據體定義---------------------
{4.0 登錄上線數據格式}
type
TLogonData = packed record
Account: array[0..20] of Char; {賬號}
MyPublicIP: array[0..20] of Char; {IP}
MyPublicPORT: array[0..5] of Char; {PORT}
lResult: array[0..1] of Char; {驗證結果: 1,成功;0,失敗}
end;
{4.1 登錄下線數據格式}
type
TLogoutData = packed record
Account: array[0..20] of Char; {賬號}
lResult: array[0..1] of Char; {驗證結果: 1,成功;0,失敗}
end;
type
THandData = packed record
Account: array[0..20] of Char; { 賬號}
Mark: array[0..1] of Char; { 是否是上線信號}
DesIP: array[0..20] of Char; { IP}
DesPORT: array[0..5] of Char; { PORT}
NeedReBack: array[0..2] of Char; {是否需要反饋}
IsDirected: array[0..1] of Char; {是否是直接發送}
end;
{聊天消息數據格式}
type
TChatData = packed record
fromAccount: array[0..20] of Char; {賬號}
toAccount: array[0..20] of Char; {}
Msg: array[0..499] of Char; { 消息內容}
IsNeedReBack: array[0..1] of Char; {是否需要接收成功反饋}
IsReBackSigh: array[0..1] of Char; {是否為反饋信息}
end;
//-------------------用戶基本信息定義---------------------
type
TUserData = packed record
Account: array[0..20] of Char; {用戶ID}
IP: array[0..15] of Char; {IP地址}
PORT: array[0..6] of Char;
IsFirstOne: array[0..2] of Char; {是否為第一個,特殊處理}
end;
//-------------------整體結構定義格式包---------------------
{(Package) 登錄上線驗證數據格式}
type
TLogonDataPackage = packed record
Head: TTQQUDPHead;
Body: TLogonData;
end;
type
TLogoutDataPackage = packed record
Head: TTQQUDPHead;
Body: TLogoutData;
end;
{握手[打洞]數據格式}
type
THandDataPackage = packed record
Head: TTQQUDPHead;
Body: THandData;
end;
{好友信息數據}
type
TFriendDataPackage = packed record
Head: TTQQUDPHead;
Body: TUserData;
end;
{聊天消息數據格式}
type
TChatDataPackage = packed record
Head: TTQQUDPHead;
Body: TChatData;
end;
//-------------------在線信息---------------------
type
PServerUserBasicInfo = ^TServerUserBasicInfo;
TServerUserBasicInfo = class //在線用戶數據表
UserData: TUserData;
IsActive: Boolean;
end;
implementation
end.
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -