一、项目题目及功能

项目题目:设计一个邮件收发客户端程序

功能:设置邮件账户、接收服务器和发送服务器等

接收邮件并显示在一个列表里

编写、发送新邮件

可暂不考虑邮件内容的编码/解码问题

删除邮件

邮件标记:已读、未读

注:参照outlook express、foxmail、thunderbird或Linux下的mail命令等。

这是一个在Linux下用命令行操作的邮件收发系统。编程语言为C语言,实现过程中利用TCP套接字来与服务器实现数据交流。邮件功能涉及到两个个邮箱协议:SMTP、IMAP4、POP3。

其中SMTP是发送邮件协议,IMAP4跟POP3是接受邮件协议,由于POP3协议不能完成邮件是否已读功能,接受邮件实现用的IMAP4协议。程序分模块实现,先实现用户账户信息的绑定(软件目前连接163邮箱的服务器,故只能实现163邮箱用户的)。再用TCP协议连接服务器,再分别实现邮件的收发功能,邮件的删除属于收件箱里的子功能。查看收件箱的邮件内容时,因未能实现base64转gb2312编码,所以用户无法直接阅读邮件的中文内容,只能解码英文字符。

模块一:主函数,用户获取用户命令,根据用户命令调用相应功能

命令 mail 查看帮助信息及功能说明。

命令 email inbox进入收件箱

命令 email -h查看帮助文档

命令 email setuser设定用户

命令 email send 目标邮箱 发送邮件

模块二:设定用户,用于设置账户信息

模块三:发送邮件,用户输入邮件信息,实现邮件发送功能

模块四:收件箱查看,可查看邮件信息,已读未读,同时在该模块里嵌套删除邮件的功能

参考文档和完整的文档和源码下载地址:

linux c邮件客户端,[源码和文档分享]基于C语言和TCP Socket实现的Linux环境下的邮件收发客户端程序...相关推荐

  1. linux邮件收发程序流程图,[源码和文档分享]基于C语言和TCP Socket实现的Linux环境下的邮件收发客户端程序...

    一.项目题目及功能 项目题目:设计一个邮件收发客户端程序 功能:设置邮件账户.接收服务器和发送服务器等 接收邮件并显示在一个列表里 编写.发送新邮件 可暂不考虑邮件内容的编码/解码问题 删除邮件 邮件 ...

  2. 图书管理系统 java 源码_[源码和文档分享]基于C语言和SQL SERVER数据库实现的图书管理系统...

    摘 要 本文根据<数据库应用系统设计>课程要求而做.选择图书馆管理系统设计与开发是因为觉得图书馆管理系统对我们的帮助很大,并且经常去图书馆,对图书馆的大部分功能及流程还是比较了解,而且现在 ...

  3. javamail 解码 base64 html格式邮件_[源码和文档分享]基于JavaMail的邮件收发系统

    摘 要 电子邮件在当今社会中扮演了一个很重要的角色.越来越多的人在使用它.而且用它的人数势必会继续增加.本文介绍了Javamail邮件收发系统的开发背景,对国内外现有的多种成熟的电子邮件系统进行分析和 ...

  4. bootstrap signin将邮件改成用户名_[源码和文档分享]基于VC++和Oracle数据库的邮件管理系统的设计与实现...

    摘 要 电子邮件的使用简易,投递迅速,收费低廉,易于保存,全球畅通无阻,使得电子邮件被广泛地应用,当前流行的各大邮件系统除了最主要的收发信件之外,功能越来越复杂,但是人们平常真正用到的功能很少,很多功 ...

  5. [源码和文档分享]基于java 的仿QQ聊天工具

    一 需求分析 本系统是基于java开发的聊天室.有用户注册.用户登陆.修改密码.忘记密码.添加好友.用户聊天.群聊功能.如果服务器还没有启动,则客户端是不可以登陆.注册.忘记密码,如果在运行过程中,服 ...

  6. 和java通信_[源码和文档分享]基于JAVA的即时通信软件

    一.设计任务书 1.1 设计任务 本文设计的是一个简单的即时通信软件,利用 Java Socket 进行点到点通信,其工作机制模仿即时通信软件的基本功能,已实现的功能有:客户端登录 客户端退出 群组成 ...

  7. [源码和文档分享]基于JAVA的即时通信软件

    一.设计任务书 1.1 设计任务 本文设计的是一个简单的即时通信软件,利用 Java Socket 进行点到点通信,其工作机制模仿即时通信软件的基本功能,已实现的功能有: 客户端登录 客户端退出 群组 ...

  8. [源码和文档分享]基于VC++的四国军棋局域网联网游戏的设计与实现

    本文详细介绍了一个在Windows环境下的基于游戏大厅框架的四国军棋网络游戏的设计和实现.该游戏可在局域网上联机对战,实现了游戏.聊天.积分等功能.该软件在Windows环境下用VC++6.0实现. ...

  9. java rpg对战_[源码和文档分享]基于java的RPG回合制游戏

    一.工作积累总结 该项目是一个回合制RPG游戏,讲述了动物主角对抗人类,自逃出动物园开始,一路与人类对抗,提升能力,并寻找新队友组成团体,逼得人类不得不与之谈判,最终与人类达成了和平协议的故事.玩家可 ...

最新文章

  1. Spark Streaming VS Flink Streaming
  2. 二元函数洛必达求极限_由一类特殊的洛必达法则情形展开的讨论 ——小领域的大作用...
  3. 最新 主流笔记本cpu列表
  4. MyCat 入门指南
  5. spring-mybatis.xml 访问html5,Spring mvc无xml配置及利用JdbcTemplate访问数据库
  6. excel怎么在柱状图上加超链_如何让你的年终总结更符合领导心意,高薪员工必备的excel技能...
  7. 收录批量查询神器 bluecattools
  8. GBK转unicode码查询表的改进
  9. JAVA的嵌入式脚本开发(上)
  10. windows 下opencv for python 的安装
  11. 字段与属性的总结与比较
  12. [2019杭电多校第五场][hdu6624]fraction
  13. java 视频合并_java 实现分段视频合并
  14. 主梁弹性模量计算_各排立杆传至梁上荷载标准值、设计值是那一个数据
  15. 跟着陶哲轩学数学 目录
  16. fullpage.js版本3.0.9报错问题(licenseKey)
  17. 操作系统与硬件、其他系统软件以及用户之间的关系
  18. 关于VS2010下编译NTL库方法及NTL库的应用
  19. 解决windows10 无法开热点问题
  20. 随笔-20191217

热门文章

  1. 【优选源码】每天免费领取名片赞至少1000!引流必备!
  2. 自己制作crowd counting数据集
  3. revit二次开发的一些前期准备
  4. 一分钟解决Springboot响应报错:would dispatch back to the current handler URL [/index] agai
  5. android微信字体颜色,苹果和安卓微信朋友圈字体颜色如何修改(哪个版本能用啊)...
  6. 新的一年即将到来,分享2023年火爆的行业和值得做的副业兼职项目
  7. matlab粒子群加约束条件_粒子群算法(PSO)MATLAB实现
  8. EmailAll 强大的邮箱收集工具(企业邮箱收集)
  9. Cloudera Manager 5.14.X 安装部署(上)
  10. 微信小程序-audio功能实现