文件名称:局域网内通讯工具
文件大小:68KB
文件格式:RAR
更新时间:2019-11-20 06:01:32
聊天室
语言:C 语言 工具:Ubuntu编程环境 知识点:Linux下网络编程,数据库知识,文件操作,线程/进程,makefile 采用 CS 架构,选用 TCP/IP 协议,完成客户端与服务器的连接。服务器端装载注册信息与登录信息,通过数据库存储客户信息,通过多线程编程实现发服务器。该项目实现了注册、登录、修改密码;登录后可实现私聊、群聊、查看在线人数、传输文件、查看聊天记录、获取管理员权限及退出登录;在获得管理员权限的情况下可进行禁言、解禁及踢人操作。 缺陷:1、所有的任务指向都是通过频繁的send/recv实现的,可以将指向标注在结构体中;2、全程使用TCP协议,怎样在登录注册后根据实际需求改为UDP协议还在思考;3、可以查阅资料尝试BS架构实现的聊天室;4、兼容性不知道如何,只在自己电脑上运行使用过,其中有两次输入密码,想实现密码不回显,结果在Ubuntu下失败,目前还没解决,但在redhat下测试该模块通过。 诸多不足,仅供参考,文件中各模块都有注释。
【文件预览】:
chat_room
----client()
--------client(21KB)
--------task.c(1007B)
--------echo.c(422B)
--------admin.c(2KB)
--------client.h(1KB)
--------registry.c(2KB)
--------recover_password.c(1KB)
--------client.c(1KB)
--------makefile(262B)
--------login_later.c(6KB)
--------record.c(5KB)
--------getch.c(183B)
--------a.out(7KB)
--------file.c(2KB)
--------file1(88B)
--------login.c(3KB)
----record()
--------71287478(148B)
--------186872455(394B)
--------157566987(86B)
--------1090676967(127B)
--------2050673558(125B)
--------586217651(160B)
--------1022966198(44B)
--------1372706838(333B)
--------1175676611(289B)
--------1763767902(133B)
--------14403520(278B)
--------36019632(118B)
--------1930672077(48B)
--------2074978749(159B)
--------1737932739(44B)
--------1643015235(88B)
--------954561506(80B)
--------1274920507(147B)
--------2034144409(90B)
--------330587813(90B)
--------1145520020(51B)
--------716243350(46B)
--------2082369870(56B)
--------673424734(222B)
--------345898221(88B)
--------382442388(227B)
--------1964757013(213B)
--------1(458KB)
--------1022396(363B)
--------295573086(170B)
--------190129(62B)
--------1886858859(184B)
--------2067256099(187B)
--------2(56B)
--------local(244KB)
--------658591042(48B)
--------958843904(138B)
--------1285779105(46B)
--------774715533(65B)
--------768905613(152B)
--------734511075(129B)
--------1544918534(118B)
--------850148887(318B)
--------1328861927(93B)
--------607753199(117B)
--------1202035373(127B)
--------137759056(114B)
--------1877971477(157B)
--------321187028(345B)
--------370997283(86B)
--------2084197935(80B)
--------658591(61B)
--------1782488469(88B)
--------1894855711(50B)
--------6(355KB)
--------1510194460(37B)
----makefile()
--------client(14KB)
--------check_putin()
--------include()
--------main()
--------pack_message()
--------Makefile(403B)
--------scripts()
----serve()
--------quit_login.c(477B)
--------registry.db(3KB)
--------offline.c(1KB)
--------serve.h(1KB)
--------admin.c(4KB)
--------registry.c(866B)
--------recover_password.c(1KB)
--------logine_later.c(5KB)
--------makefile(285B)
--------serve(25KB)
--------serve.c(2KB)
--------record.c(2KB)
--------mission.c(2KB)
--------login.c(3KB)