LumiSoft.Net 收发邮件
一:LumiSoft.Net简介
Lumisoft is a software development company specialised in mobile phones and tablets. Our products make useful information available to mobile devices with a unique advantage: exceptional spee 源码下载地址:http://files.cnblogs.com/files/sunyj/LumiSoft.Net-master.zip https://svn.lumisoft.ee:8443/svn/ |
二:收邮件
开发前需要引用LumiSoft.Net.dll文件,下载地址:http://files.cnblogs.com/files/sunyj/LumiSoft.Net.rar
- using LumiSoft.Net;
- using LumiSoft.Net.Mail;
- using LumiSoft.Net.POP3.Client;using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using System.Windows.Forms;
- namespace WinPop3
- {
- public partial class Form2 : Form
- {
- public Form2()
- {
- InitializeComponent();
- using (POP3_Client c = new POP3_Client())
- {
- //连接POP3服务器
- c.Connect("pop3.163.com", WellKnownPorts.POP3);
- //验证用户身份
- c.Login("********@163.com", "邮件密码/smtp、pop3授权码");
- if (c.Messages.Count > )
- {
- //遍历收件箱里的每一封邮件
- foreach (POP3_ClientMessage message in c.Messages)
- {
- try
- {
- //mail.MarkForDeletion(); //删除邮件
- //收件人、发件人、主题、时间等等走在mime_header里获得
- Mail_Message mime_header = Mail_Message.ParseFromByte(message.HeaderToByte());
- //发件人
- if (mime_header.From != null)
- {
- string displayname = mime_header.From[].DisplayName;
- string from = mime_header.From[].Address;
- }
- //收件人
- if (mime_header.To != null)
- {
- StringBuilder sb = new StringBuilder();
- foreach (Mail_t_Mailbox recipient in mime_header.To.Mailboxes)
- {
- string displayname = recipient.DisplayName;
- string address = recipient.Address;
- if (!string.IsNullOrEmpty(displayname))
- {
- sb.AppendFormat("{0}({1});", displayname, address);
- }
- else
- {
- sb.AppendFormat("{0};", address);
- }
- }
- }
- //抄送
- if (mime_header.Cc != null)
- {
- StringBuilder sb = new StringBuilder();
- foreach (Mail_t_Mailbox recipient in mime_header.Cc.Mailboxes)
- {
- string displayname = recipient.DisplayName;
- string address = recipient.Address;
- if (!string.IsNullOrEmpty(displayname))
- {
- sb.AppendFormat("{0}({1});", displayname, address);
- }
- else
- {
- sb.AppendFormat("{0};", address);
- }
- }
- }
- //发送邮件时间
- DateTime dateTime = mime_header.Date;
- string ContentID = mime_header.ContentID;
- string MessageID = mime_header.MessageID;
- string OrgMessageID = mime_header.OriginalMessageID;
- string Subject = mime_header.Subject;
- byte[] messageBytes = message.MessageToByte();
- Mail_Message mime_message = Mail_Message.ParseFromByte(messageBytes);
- if (mime_message == null)
- {
- continue;
- }
- string Body = mime_message.BodyText;
- try
- {
- if (!string.IsNullOrEmpty(mime_message.BodyHtmlText))
- {
- //邮件内容
- string BodyHtml = mime_message.BodyHtmlText;
- }
- }
- catch
- {
- }
- }
- catch (Exception ex)
- {
- }
- }
- }
- }
- }
- }
- }
LumiSoft.Net 收发邮件的更多相关文章
- DouNet学习_收发邮件
一.收发邮件 --->第一步:发邮件首先要有发送者的邮箱地址和登录的密码才能发送 这些都写在APP里 不要写死 --->第二步:发邮件就要有网络,要添加net.Mail命名空间 要发送的 ...
- Outlook Express 收发邮件出现"0x800CCC0F"错误代码解决方法
非常多网友在使用Outlook Express收发邮件的过程中,有时能够发送邮件,但出现不能接收信件的问题.每次在收邮件都会在某个地方停止不动,然后报超时,出现错误代码0x800CCC19或0x800 ...
- 用 Apache James 搭建邮件服务器来收发邮件实践(一)(转)
Apache James 简称 James, 是 Java Apache Mail Enterprise Server的缩写.James 是100%基于Java的电子邮件服务器.它是一种独立的邮件服务 ...
- 用Emacs收发邮件
使用Emacs,将尽可能多的工作放到Emacs中来完成,这样可以提高工作效率. 1.安装必要的LISP插件和程序 $sudo apt-get install stunnel4 $sudo apt-ge ...
- Python收发邮件
发送邮件使用SMTP协议,接受POP3或IMAP: 创建邮件内容email模块,发送邮件smtplib模块.发送邮件比较简单,只需先创建SMTP对象,登录服务器后根据发收邮箱地址发送即可: POP3接 ...
- mailkit库收发邮件
mailkit库用于收发邮件.这个库可以替代C#自带的发邮件库 环境 W10 / VS2017CMMT / MailKit version="2.0.3" "net46 ...
- 转--python -- 收发邮件
官方 import smtplib from email.mime.text import MIMEText from email.header import Header # 发送邮箱服务器 smt ...
- c#使用QQ邮箱的SSL收发邮件
c#使用SMTP.QQ.COM的SSL验证时,收发邮件,请勿设置端口,代码如下: (1)虽然SSL端口是465,但是,在代码里,不能直接设置端口,很奇怪?挺奇怪,好吧腾讯SSL好像用的是587端口!! ...
- 在命令行上 使用 mutt, fetchmail, maildrop, msmtp 收发邮件
基于shell 现在已经有了 Mail.app, Thunderbird, Outlook 这些图形化工具能很方便的处理邮件,为啥还需要 mutt 这种命令行文本方式的邮件工具呢?mutt 的一个优势 ...
随机推荐
- sql语句查询知识点
LEFT JOIN 关键字会从左表 (Persons) 那里返回所有的行,即使在右表 (Orders) 中没有匹配的行 INNER JOIN INNER JOIN 关键字在表中存在至少一个匹 ...
- LoadRunner调用java函数测试oracle
LoadRunner调用java函数测试oracle 测试oracle的方法有很多,可以使用loadrunner的oracle协议直接调用oracle进行测试,也可以调用开发的java程序对oracl ...
- Reading Meticulous Measurement of Control Packets in SDN
SOSR 17 概要 网络流量中有一部分是用于网络管理,(根据packet process survey,该部分流量属于包转发的slow path部分)由于sdn的数控分离,交换机需要向控制器发送大量 ...
- SQL SERVER或oracl如何判断删除列
ORACLE: BEGIN EXECUTE IMMEDIATE 'DROP TABLE CUX_PO_VENDORS';EXCEPTION WHEN OTHERS THEN NULL;END ...
- java中的作用域
在说明这四个关键字之前,我想就class之间的关系做一个简单的定义,对于继承自己的class,base class可以认为他们都是自己的子女,而对于和自己一个目录下的classes,认为都是自己的朋友 ...
- 算法学习记录-查找——平衡二叉树(AVL)
排序二叉树对于我们寻找无序序列中的元素的效率有了大大的提高.查找的最差情况是树的高度.这里就有问题了,将无序数列转化为 二叉排序树的时候,树的结构是非常依赖无序序列的顺序,这样会出现极端的情况. [如 ...
- 解决Js跨域访问的问题
1,最近有个需求,用Js获取Html标签<input type="file"/>的路径!遇到代码拒绝访问,提示安全验证,不允许跨域访问,简单的设置一下浏览器即可,不过对 ...
- Web | jQuery快速上手
jQuery伴随前端走过一段辉煌的时光,虽然现在已经慢慢的走下顶峰,但是过去的很多项目都是用jQuery写的,它的一些封装思想也非常值得借鉴,懂得jQuery是前端必不可少的. jQuery顶级对象 ...
- org.yaml.snakeyaml.parser.ParserException: while parsing a block mapping
org.yaml.snakeyaml.parser.ParserException: while parsing a block mapping 原因:yml文件格式错误,此文件要求严格要求格式 如节 ...
- 【PTA 天梯赛】L3-003 社交集群(并查集)
当你在社交网络平台注册时,一般总是被要求填写你的个人兴趣爱好,以便找到具有相同兴趣爱好的潜在的朋友.一个“社交集群”是指部分兴趣爱好相同的人的集合.你需要找出所有的社交集群. 输入格式: 输入在第一行 ...