- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
重 庆 理 工 大 学 课程设计 课程 面向对象程序设计I 题目 基于WinSock的局域 网通信系统的开发 1 系统分析 1.1 模块一 这个模块的功能是启动登录对话框,并且在启动后有登入,取消,申请帐号三个可以选择,若要登录则输入正确的帐号和密码即可,这是系统将传密码和帐号去验证是否正确,正确的话就可以登入到主对话框来(模块三),不正确的话会有重新输入的提示.如果选择申请帐号则会弹出申请帐号对话框(模块二).另外还可以点击取消(退出)按钮,则程序将关闭. 1.2 模块二 申请帐号对话框弹出后,用户要输入长度范围内的昵称,以及长度方位内的密码,并且第二次输入的密码要与第一次输入的密码相同,如果不输入点确定也会报错,在确定完输入信息后,点击确定数据库将存放输入的信息,点击取消将回到登录界面. 1.3 模块三 这个模块中我做的是窗口界面,也就是接口.进入主界面后,可以有更改状态,发送消息,删除好友,查找好友,个人设置,好友消息,退出这几个选项.点击更改状态可以选择自己的状态,一共有三种可供选择,点击查找好友后会弹出一个选择查找方式的窗口,选择方式查到好友后可查看好友资料并加好友,接下来可以与好友聊天,但必须选中好友后再点击发送信息,否则将弹出提示语,这点在点击好友信息按钮和删除好友按钮时也是如此,必须选中后才能操作.另外可以点击个人设置对自己的资料进行填写修改.点击退出会弹出一个确认退出对话框,再次确认后就将退出程序,点取消则返回主对话框. 2 系统实现 2.1模块一 CP2PClientApp theApp; unsigned int CP2PClientApp::_seq_count = 0; //消息号计数器 IM_Config_Parser g_fileobj(imclient.ini); //操作配置文件全局对象,配置文件名称imclient.ini Message_QueueIM_Message_Block*,MAX_MSG_QUEUE_NUM g_rcv_msg_queue;//全局接收消息队列 Message_QueueIM_Message_Block*,MAX_MSG_QUEUE_NUM g_send_msg_queue;//全局发送消息队列 //全局udp通信对象 Udp_Daemon g_udp_daemon; #endif //从配置文件读取配置信息 if(!g_fileobj.open()) { AfxMessageBox(打开配置文件imclient.ini 失败!); return 0; } char strValue[MAX_STRING_LEN]; if(g_fileobj.get_string(im_appclient,im_server_ip,strValue,MAX_STRING_LEN)) m_ServerInfo.server_ip = ntohl(inet_addr(strValue));//服务器ip if(g_fileobj.get_string(im_appclient,im_server_udp_port,strValue,MAX_STRING_LEN)) m_ServerInfo.server_port = atoi(strValue);//服务器端口号 if(g_fileobj.get_string(im_appclient,recv_producer_num,strValue,MAX_STRING_LEN)) m_ClientInfo.recv_producer_num = atoi(strValue);//接收消息线程数 if(g_fileobj.get_string(im_appclient,send_consumer_num,strValue,MAX_STRING_LEN)) m_ClientInfo.send_consumer_num = atoi(strValue);//发送消息线程数 if(g_fileobj.get_string(im_appclient,process_consumer_num,strValue,MAX_STRING_LEN)) m_ClientInfo.process_consumer_num = atoi(strValue);//处理消息线程数 if(g_fileobj.get_string(im_appclient,recent_ID,strValue,MAX_STRING_LEN)) m_ClientInfo.uid = atoi(strValue);//最近登录的用户帐号 m_ClientInfo.cli
文档评论(0)