⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 databag.h

📁 类似于QQ的聊天工具,分为客户端和服务器端,有共享空间,能发布公告,可传输文件
💻 H
字号:
// DataBag.h: interface for the CDataBag class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_DATABAG_H__3413E9CC_1134_4902_9195_C7D302EEDB64__INCLUDED_)
#define AFX_DATABAG_H__3413E9CC_1134_4902_9195_C7D302EEDB64__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

/*---------------------------------------------------------------------------
 定义各包头标志在包中的开始位置以及所占长度,方便提取包头中的标志
 --------------------------------------------------------------------------*/
const int INPACKET_FLAG_BYTE = 4;	     //包中标志位所占字节数
const int PACKET_LENGTH_POS  = 0;        //包长在包中的开始位置
const int ORDER_CODE_POS     = 4;        //命令号在包中的开始位置
const int RET_STATUS_POS     = 8;        //服务器返回的消息状态在包中的开始位置
const int SENDTO_LENGTH_POS  = 12;        //接收方ID长度在包中的开始位置
const int SENDTO__POS        = 16;       //接收方ID在包中的开始位置


/*---------------------------------------------------------------------------
 数据包组成(包头,打包内容及其相应的长度)
 --------------------------------------------------------------------------*/
struct tagPacketParam
{
	CString order;
	CString Status;          //增加返回状态到打包结构中(修)
	CString SentTo;
	CString UserId;
	CString UserName;
	CString UserPsw;
	CString UserSex;
	CString UserDptm;
	CString UserDuty;
	CString UserTel;
	CString UserEmail;
	CString UserChar;
	
	long    PacketLen;
	long    paramNum;

	////////////////////
	//构造初始化所有成员
	tagPacketParam()
	{
		order     = "";
		Status    = "0001";    //将原来默认1字节修改为4字节(修)
	    SentTo    = "0";
		UserId    = "";
		UserName  = "";
		UserPsw   = "";
		UserSex   = "";
		UserDptm  = "";
		UserDuty  = "";
		UserTel   = "";
		UserEmail = "";
		UserChar  = "";

		PacketLen = 0;
		paramNum  = 0;
	}
};

class CDataBag  
{
public:
	virtual void DataPackage(CString& buff, tagPacketParam* param) = 0;
	virtual void SplitDate(CString& buff, CString* strArray) = 0;
			void ltoc(char* bufByte, long lNum);
			long ctol(char* byte);
	virtual		 ~CDataBag();
};

#endif // !defined(AFX_DATABAG_H__3413E9CC_1134_4902_9195_C7D302EEDB64__INCLUDED_)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -