在这里略去与服务器相同的:
const int TimeWaitForRes=3000; 发送数据超时时间
const int PersonNumEveryTime=20;查看在线的人,每次发回的多少人
const int TimerSpanClient=40000; 客户端每隔这个时间,若没有收到TOTAL_ONLINE消息(所有在线人数),就判断客户端已经掉线了。
const int DataBufLength=1000; 发送接受数据最大长度
const int MaxResponseMsgLength=20;
const int UserFileReservedLength=20;
//用户user.db文件中,前面保留的字节数,以备以后扩充使用
const int MaxPasswordLength=16;密码的最长长度
const int LimitMaxMsgLength=900;限制每次发送消息的字节数
const int AutoSaveTime=200000; 自动保存用户信息的间隔时间
const int CheckBufLength=128; 检查确认信息的缓冲区长度
必要的类申明,否则以下几个数据结构会有编译错误
class CData;
class CMsg1;
class CMsg2;
class CLookDlg;
class CTalkDlg;
class CFriendDetailDlg;
class CClientSocket;
在客户端保存用户详细信息的数据结构
struct UserInfo{
BYTE HaveDetail; //(0 没有详细资料, 1 有)
BYTE CanbeAdd;
//能否被加入的标志(0拒绝所有,1允许任何,2需要身份验证)
BYTE Sex;
DWORD Id;
DWORD PhotoId;
char Age[10];
char Name[20];
char Phone[20];
char Email[30];
char Fax[20];
char Homepage[40];
char Address[60];
char Department[20];
char Description[100];
UserInfo(); //对各个成员进行初始化
};