计算机应用 | 古代文学 | 市场营销 | 生命科学 | 交通物流 | 财务管理 | 历史学 | 毕业 | 哲学 | 政治 | 财税 | 经济 | 金融 | 审计 | 法学 | 护理学 | 国际经济与贸易
计算机软件 | 新闻传播 | 电子商务 | 土木工程 | 临床医学 | 旅游管理 | 建筑学 | 文学 | 化学 | 数学 | 物理 | 地理 | 理工 | 生命 | 文化 | 企业管理 | 电子信息工程
计算机网络 | 语言文学 | 信息安全 | 工程力学 | 工商管理 | 经济管理 | 计算机 | 机电 | 材料 | 医学 | 药学 | 会计 | 硕士 | 法律 | MBA
现当代文学 | 英美文学 | 通讯工程 | 网络工程 | 行政管理 | 公共管理 | 自动化 | 艺术 | 音乐 | 舞蹈 | 美术 | 本科 | 教育 | 英语 |

免费vc++网上寻呼QICQ源代码(附带论文)(一)(5)

2013-06-29 01:28
导读:sp; 显示被加为好友的信息的对话框 CmultiSendDlg 通过姓名或ID列表的向多人发送信息的对话框 CsendBroadcastDlg 发送广播消息的对话框 CsendToAllDlg 向所有好友发
sp; 显示被加为好友的信息的对话框
CmultiSendDlg     通过姓名或ID列表的向多人发送信息的对话框
CsendBroadcastDlg   发送广播消息的对话框
CsendToAllDlg      向所有好友发送消息的对话框
CModifyPIDlg      修改个人信息的对话框

六.界面类
CGfxGroupEdit,CGfxOutBarCtrl,CGfxPopupMenu
实现像OutBar和oicq样式的那种滚动分栏的界面类,从Internet,上获得的源代码,通过修改一些接口,使之更适合我的应用。提供了一个漂亮的界面。

TrayIcon类
处理在任务栏上添加.修改.删除图标的类。封闭了Window的API函数

八.全局结构:
UserInfo结构存储在线人的信息
FriendState 在好友线信息结构
SaveMsg  消息的存储结构
Sparam  传给线程的参数结构
 

§4.4服务器端的常量定义
 
 在这里,定义和申明了一些全局函数,常量,宏和全局数据结构,包括用户配置文件名,默认的参数等,总之,修改程序中的参数简单,直接修改头文件就可以了,因为所使用的数值性的参数,都在这里定义了。

#define ResponseMsg "ok"              发送数据时,发回的响应消息标志
#define SETUPFILE "config.ini"           服务器的保存配置文件
#define DEFAULT_SEND_NUM  5        默认的发送端口的数量
#define DEFAULT_DATAS_PWD ""        默认的数据源的访问密码
#define DEFAULT_DSN    "IDServer"     默认的数据源名称
#define DEFAULT_UID  ""                 默认的数据源的访问的UID

(科教范文网 lw.AsEac.com编辑整理)

#define DEFAULT_BROADCAST_PWD "1234567890" 默认的发送广播密码
#define DEFAULT_RECV_PORT_STR "4000,4001,4002"
默认的服务器接受端口号列表
const int ListenSocketNum=10;      最大的接受端口的个数
const int SendSocketNum=15;       最大的发送端口个数
const int TimeWaitForRes=1000;     等待响应的超时时间
const int MaxUserNumber=500;      服务器端最大的用户数
const int UserIdRadix=2000;         用户帐号开始的基数(从这个基数开始增加)
const int PersonNumEveryTime=20;  请求查看在线的人时,每次最多发回的人数
const int TimerSpanServer=30000;   服务器的一个运行时间间隔,过一个这个时间间隔,服务器就检查一次,看用户是否仍然在线
const int DataBufLength=500;          发送数据的最大长度
const int MaxResponseMsgLength=20;   最大的响应消息长度
const int CheckBufLength=512;        检查发回响应的一个缓冲区长度

保存在线人的信息的数据结构
typedef struct{
 BYTE State;  //0 不在线,1 在线,2  隐身
 BYTE CanbeAdd;
 DWORD Id;
 DWORD IP;
 DWORD Port;
 DWORD PhotoId;
 CString Name;
 CString Department;
}UserOnline;   

全局函数
UINT ProcessRecvData(LPVOID param);
处理用户请求的线程服务函数
UINT CheckOnline(LPVOID param);
处理定时检查用户是否仍然在线的线程函数

服务器接受到的消息类型
#define SEND_MSG_TO_FRIEND    1   //CMsg1 index,friendId,myId,msg,time 
#define FRIEND_IDENTITY_VALIDATE  2   //CMsg1 (转载自http://zw.NSEaC.com科教作文网)
#define ADD_AS_FRIEND            3   //CMsg1
#define FRIEND_DETAIL            4   //CMsg1
#define FIND_FRIEND_BY_ID       5   //CMsg1
#define DELETE_A_FRIEND         6   //CMsg1

上一篇:免费房产证信息数字签名的实现(一)毕业 下一篇:没有了