基于Qt的局域网即时通信系统设计与实现(提供各种版本的源代码)

3 篇文章 1 订阅

 我创建了一个QQ群,有问题的话,可以直接加群:530240681。

github上项目的链接:https://github.com/siyueshiqi/LAN_IM

 

本系统主要实现了注册登录、好友管理、即时通信(文本、视频)、群组功能、消息管理、邮件收发、文件收发等主要功能。用户通过简单的注册以后,便可以登录系统。随后进行好友、群以及讨论组的添加,就可以与其他在线的用户进行行即时通信。对于消息记录,服务器以及客户端都会在各自文件或者数据库中进行相应的存储,用户可以随时进行本地消息以及网络消息的管理。当然文件的收发也得到了很好的实现,并且也集成了简单邮件收发功能。

本想分模块展示,但是要把单独模块的代码o出来,真的很麻烦,所以还是偷懒一点,直接整个来吧,不明白的可以留言,交流。

思路:

整体采用C/S框架,用户与服务器通过tcp进行连接,发送消息、邮件等等都是通过服务器转发;用户之间发送文件单独采用tcp连接,一方作为服务器,一方作为客户端;用户之间视频采用udp连接(也实现了tcp的,因为是局域网,tcp速度还可以)。

原开发环境是ubuntu,数据库采用mysql,并且视频模块涉及到其他库(ffmpeg,v4l2),直接上传,大家肯定无法通过,大家需要参考代码的话,可以留言。最近有点忙,在实验室做项目,等有空了,我把视频模块删除以后,再上传。

下面是主要的几个界面的展示:

登陆界面:

 

服务器界面:

左边显示已经登陆的用户ID,右边显示邮箱在线的ID(测试用的)

 

主界面:

 

好友查询:

 

 

邮件:

 

消息管理:

 

好友聊天界面:

 

群聊天界面:

 

讨论组聊天界面:

 

///

临时上传了三份聊天软件的源代码:

http://download.csdn.net/detail/shuideyidi/7710733

这个是我写的,但是由于视频模块的库过大,这个模块的代码被我删掉了,大家下载的话,编译肯定无法通过,所以要自行把视频模块注释掉。

并且我自定义了一个日历,在LAN_IM\IMClient\external\CustomCalendar\lib路劲下,里面是一个动态链接库,源代码也有,无法直接用的话,重新make一下,再拷进去好了。

 

http://download.csdn.net/detail/shuideyidi/7710743

这是以前在网上看到的一个源代码,十分感谢作者给我提供的思路,我很多都是参考他的。注册登录、好友管理、即时通信(文本、视频)这些聊天软件有的功能,他都实现了。代码还是不错的。

 

http://download.csdn.net/detail/shuideyidi/7710755

这是一本qt书上的源代码。采用udp进行聊天,tcp进行文件传送。功能比较简单,但是基本功能都有,也很有参考价值。

 

***********************************************************************************************************************************************************************************

2014-08-06

上次时间仓促,上传了一分最原始的代码,所以大家不能直接编译运行。现在有空,所以把视频模块注释掉了,并且多余的库文件以及中间文件,都删除。
但是其中有一个日历模块,我是独自写成一个linux32为系统底下的动态连接库的,所以无法直接使用的网友(应该是CustomCalendar找不到的错误),去LAN_IM\IMClient\external\CustomCalendar里,自行make编译成库,然后将生成的库文件,放在同目录的lib文件夹中,便可以通过编译了。(本人已经试过...应该没问题)
另外我使用的mysql数据库,在数据库文件下中,放了我导出来的两个数据库(客户端以及服务器端),大家直接导进去,便可以,也可以用文本阅读器打开,复制里的sql语句,再执行。

下载链接:

http://download.csdn.net/detail/shuideyidi/7723377

 

***********************************************************************************************************************************************************************************

2014-10-14

还有一个来自福州的同胞,下载了我csdn上的代码,起初没能通过编译,后来找到了我,最后成功了。

有位来自yemen的外国朋友,下载了我在csdn上的源代码,没能编译通过。

所以我决定自己把代码再修改一下,将LAN_IM\IMClient\external\CustomCalendar里的代码,全部直接移入IMClient里面。

这样各位直接下载,就可以编译通过,然后直接运行了。不出意外,应该不会报什么CustomCalendar之类的找不到的错误了。

如果觉得代码给你带了帮助可以给个star鼓励一下我...谢谢

github上的链接:https://github.com/siyueshiqi/LAN_IM

 

***********************************************************************************************************************************************************************************

2015-7-27 (今天是我女朋友23周岁生日,纪念一下)

由于在博客中提到了视频模块,所以很多网友找我要这里的代码,我再三劝说,这里代码问题很大,可是他们都不相信我。这年头做人太难了......

所以我干脆原封不动把一年前的代码完全上传。视频相关的库可能要重新编译,ubuntu32位的,大家随缘。

http://download.csdn.net/detail/shuideyidi/8937939



  • 24
    点赞
  • 94
    收藏
    觉得还不错? 一键收藏
  • 112
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 112
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值