当前位置:首页 » 软件开发
开发技术指南» 文章正文
    引言: 作者:钱义力北京工业大学软件学院 2002 级研 下载源代码 很早就想做一个类似QQ一样的聊天程序,苦于一直没有时间,再加上觉得网络多点通信比较难做,所以这个想法就搁在一旁。
 

 

    摘要:10、邦定数据  定义一个绑定类,将其成员变量绑定到一个指定的记录集,以方便于访问记录集的字段值。  (1). 从cadorecordbinding派生出一个类: class ccustomrs : public cadorecordbinding{begin_ado_binding(ccustomrs)ado_variable_length_entry2(3, advarchar,......
    摘要:1.内核对象: 1).符号对象 2).事件对象 3).文件对象 4).文件影象对象 5).i/o完成对象 6).作业对象 7).信箱对象 8).互斥对象 9).管道对象 10).进程对象 11).信标对象 12).线程对象 13).等待计时器对象 2.内核对象只能由内核所拥有,而不是由进程拥有.3.内核对象的数据结构有计数器,进程调用时,计数器增1,调用结束,计数器减1,内核对象计数器为零时,销......


Netmsg 局域网聊天程序

作者:钱义力

下载源代码 【程序编程相关:windows平台mpi程序编译

北京工业大学软件学院 2002 级研 【推荐阅读:WIN32音频数据采集---WaveIn

一.说明 【扩展信息:痛苦的历程:Ado访问PARADOX数据

  很早就想做一个类似qq一样的聊天程序,苦于一直没有时间,再加上觉得网络多点通信比较难做,所以这个想法就搁在一旁.最近二个月学校放假闲着无聊看了一些tcp/ip,多线程的书,再加上以前的一点c++与vc的基础,就着手做了起来,共化了17天完成了这个程序.它包括服务器端程序netmsgserver与客户端程序netmsgclient.通过编程还发现原始的socket(像send,recv等)命令比vc封装好的cscoket速度要快.怎么说呢,程序不小,有3000多行的代码,错误与垃圾代码肯定也不少了,毕竟水平有限,大家看了不要扔鸡蛋就谢谢了.

  本程序采用tcp/ip socket多线程编程,并对一些重要的同步操作做了超时控制,以减少等待的时间,像连接服务器,等待对方接收文件等.基本功能跟qq类似,能进行多点的聊天与点对点的文件传送.这种编程的优势在于传送的数据不会丢失,而且用户上线下线能即时反应出来.唯一的遗憾是界面做的太滥,本人对界面编程一窍不通,暂且还只能在局域网内使用,因为没有增加可以通过代理服务器的功能.

二.大概通信流程

1.netmsgserver 服务器端

  它采用了两个线程,其中一个线程处理各个客户端的连接请求(accept),另一个在客户端请求连接成功后处理接收到的命令并返回信息,包括用户注册.登陆.下线.生成在线用户列表.查询修改某个在线用户的信息等.

2.netmsgclient客户端

  每个netmsgclient客户端既是信息服务器端,又是信息客户端,所以能实现多点通信.

2.1

  通过注册来获得用户号码.发送两条命令:"regt\t\n",再发送一个用户资料的数据结构.注册成功服务器返回一个id号给用户,否则返回一个错误代码.


...   下一页
 ·vc+ado动态创建access数据库     »显示摘要«
    摘要:vc+ado动态创建access数据库 ado技术目前已经成为连接数据库的主流技术,下面我来介绍如何使用ado来动态创建access数据库。为了使用ado,必须引入微软的两个动态连接库msadox.dll和msado15.dll:#pragma warning (disable: 4146)#import "c:\program files\common files\system......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE