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 的一个优势 ...
随机推荐
- 【php】php与mysql初体验
第一次体验在web站点上使用MySQL数据库,遇到了很多问题,总结如下: 1.安装XAMPP软件后,将文件放到hotdocs文件夹下,要访问其中的文件,使用localhost/XXX/XXX ,路径要 ...
- java学习笔记 --- 多线程(多线程的控制)
1.线程休眠 public static void sleep(long millis) public class ThreadSleep extends Thread { @Override ...
- rhel install java jdk
Linux安装JDK完整步骤 1.检查一下系统中的jdk版本 [root@localhost software]# java -version 显示: openjdk version "1. ...
- Loadrunner测试webservice协议总结
Loadrunner测试webservice协议总结 一.协议选择 1.打开Virtual user generator,新建脚本,选择webservice协议
- http协议的总结
HTTP是一个属于应用层的面向对象的协议,由于其简捷.快速的方式,适用于分布式超媒体信息系统,其主要特点概括如下: 1.支持客户/服务器模式. 2.简单快速:客户向服务器请求服务时,只需传送请求方法和 ...
- MySQL语句的优化
1.使用limit 当不需要取出全部数据时,在查询后面加上limit限制. 2.select * 每次看到select * 的时候都需要用怀疑的眼光审视,是不是真的需要返回全部的列. 3.重复查询相同 ...
- es6 入坑笔记(一)---let,const,解构,字符串模板
let 全面取代var 大概相似于C++的定义,一个变量必须得先定义后使用,没有预编译 注意let的作用域,一个{}就是一个作用域,上述规则须在一个作用于内 坑:for(let i =0;i < ...
- 两种方法实现Linux不活动用户登录超时后自动登出
在平常的工作中,windows系统使用的比较多一些,身边的很多同事都会对自己的电脑进行一些个性化设置,比如离开一段时间后自动锁屏.自动关闭屏幕.自动注销当前登录等.在windows下可以这样操作,那么 ...
- vue-scroller使用
<template> <div class="page page-scroller"> <scroller class="scroller& ...
- npm run build 时报错operation not permitted
1.项目使用vue框架,在npm run build 打包时报错: 访问对应的目录,发现无法打开,原来是文件被其他应用程序占用了,仔细看了一下,xftp文件传输的软件打开着,把它关闭以后,重新运行np ...