Coder Social home page Coder Social logo

im's Introduction

基于qt c++的一个即时通讯软件


项目说明

这个软件是我大二学期的一个c++课设,ui方面是仿照着pc端的wechat,由于本人不太喜欢c++的语法,所以这个软件更新的速度会很慢。

新增文件上传下载功能(很狗屎),由于考虑到自己的服务器真的不行,所以服务端部分直接新创建了一个程序来对文件进行上传下载。

开发说明

本人负责此软件的后端部分

前端部分则由这个靓仔编写

文件说明

chat -> 程序客户端源代码

service -> 服务器处理代码

testFileServer -> 文件服务器服务端源代码

serverRealse -> 服务端编译后文件夹

FileServerRealse -> 文件服务器源代码

chatRealse -> 客户端可执行文件夹

项目启动说明

服务端都需要在MinGw 32bit下编译运行 (由于笔者编程能力有限,其他环境下都会出现编译错误,具体原因未知)

注意,service如果出现编译后不能正常执行的情况,则应该添加32bit的Mysql动态执行文件lib与dll.

客户端则需要在MSCV 2017 64bit下编译

所有笔者编译后的文件则不会出现这种情况

项目功能

账号方面

  • 账号注册

  • 账号登陆

好友方面

  • 添加好友
  • 查询好友
  • 请求好友通知

消息方面

  • 离线消息通知
  • 在线消息

项目展示

客户端方面

  • 软件首页

  • 登陆界面

  • 主页面

  • 聊天界面

客户端方面

技术选型

开发语言: c++ 基础框架: MVC 核心技术:多线程QTcpSocket +多线程QUdpSocket + 数据库连接池 数据库: mysql

数据库说明

数据库文件需要加载到名字为qq数据库中,默认账号密码 root 123

数据库只有服务端有连接,分别在mysql.cpp和threadmysql.cpp中有连接信息,并没有单独出丑来做一个资源文件,耦合度很高。

重要说明

服务器这边我打算采用的是mvc架构,但是在最后的时候测试bug的时候发现数据库这边不允许主线程和子线程同时访问,考虑到子线程访问次数比较少,所以直接新建了一个类去让子线程直接访问数据库,打破了mvc模式,以后应该会改的。。。大概。。

im's People

Contributors

adroitwolf avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

im's Issues

客户端与服务端连接失败

点击注册或登录按钮,没有反应怎么办?建立tcp连接是不是需要把ip.txt里面的ip改成本地的ip就可以了,还需要做什么吗?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.