基于LumiSoft.Net.dll发、收、删邮件

发邮件:

using LumiSoft.Net.SMTP.Client;  

Mime m = new Mime();
MimeEntity mainEntity = m.MainEntity;
// Force to create From: header field
mainEntity.From = new AddressList();
mainEntity.From.Add(new MailboxAddress(txtFrom.Text, txtFrom.Text));
 // Force to create To: header field
 mainEntity.To = new AddressList();
 mainEntity.To.Add(new MailboxAddress(txtTo.Text, txtTo.Text));
mainEntity.Subject = txtSubject.Text;
//添加正文
mainEntity.ContentType = MediaType_enum.Multipart_mixed;
MimeEntity textEntity = mainEntity.ChildEntities.Add();
textEntity.ContentType = MediaType_enum.Text_html;
textEntity.ContentTransferEncoding = ContentTransferEncoding_enum.Base64;
textEntity.DataText = txtBody.Text;
//发送附件
  MimeEntity attachmentEntity = new MimeEntity();
  attachmentEntity.ContentType = MediaType_enum.Application_octet_stream;
  attachmentEntity.ContentDisposition = ContentDisposition_enum.Attachment;
  attachmentEntity.ContentTransferEncoding = ContentTransferEncoding_enum.Base64;
  attachmentEntity.ContentDisposition_FileName = "c:/test.jpg";
  attachmentEntity.DataFromFile("c:/test.jpg");  

  mainEntity.ChildEntities.Add(attachmentEntity);  

  SMTP_Client.QuickSend(m);

  收邮件:

using LumiSoft.Net.POP3.Client;
using LumiSoft.Net;
using LumiSoft.Net.Mime;
[csharp] view plain copy
public List<Mime> GetEmails(string pop3Server, string pop3Port, string username, string password)
        {
            bool pop3UseSsl = false;
            List<string> gotEmailIds = new List<string>();
            List<Mime> result = new List<Mime>();
            using (POP3_Client pop3 = new POP3_Client())
            {
                try
                {
                    pop3.Connect(pop3Server, Convert.ToInt32(pop3Port), pop3UseSsl);
                    pop3.Authenticate(username, password, false);
                    POP3_ClientMessageCollection infos = pop3.Messages;
                    foreach (POP3_ClientMessage info in infos)
                    {
                        if (gotEmailIds.Contains(info.UID))
                            continue;
                        byte[] bytes = info.MessageToByte();
                        gotEmailIds.Add(info.UID);
                        Mime mime = Mime.Parse(bytes);
                        result.Add(mime);
                    }
                }
                catch (Exception ex)
                {
                    throw new Exception(ex.Message);
                }
            }
            return result;
        }

  删除邮件:

using LumiSoft.Net.POP3.Client;
using LumiSoft.Net;
using LumiSoft.Net.Mime;
[csharp] view plain copy
private void DeleteMail()
        {
            using (POP3_Client c = new POP3_Client())
            {
                c.Connect(pop3Server, Convert.ToInt32(pop3Port));
                c.Authenticate(username, password, false);
                if (c.Messages.Count > 0)
                {
                    foreach (POP3_ClientMessage mail in c.Messages)
                    {
                        mail.MarkForDeletion();
                    }
                }
            }
        }

  

时间: 2024-08-06 11:57:58

基于LumiSoft.Net.dll发、收、删邮件的相关文章

Powershell管理系列(四十)PowerShell查询和解锁AD账号(改进后,只发一次邮件)

-----提供AD\Exchange\Lync\Sharepoint\CRM\SC\O365等微软产品实施及外包,QQ:185426445.电话18666943750 需求:根据要求对集团AD域及下属3个子域的所有AD账号进行统计,查询所有锁定的账号,解锁,并每天早上发送邮件到指向邮箱.(之前三十九的基础上略作调整,只发一封邮件即可) Remove-Item C:\get_locked_user\ -Recurse -Force if(!(test-path C:\get_locked_user

Exchange 2016通过New-mailboxSearch批量删邮件

1)首先需要添加删邮件的权限 Assign eDiscovery permissions in Exchange 2016 https://technet.microsoft.com/en-us/library/dd298059(v=exchg.160).aspx2)然后执行命令进行批删查询 Create an In-Place eDiscovery search in Exchange 2016 https://technet.microsoft.com/en-us/library/dd353

基于Lumisoft.NET组件的POP3邮件接收和删除操作

Lumisoft.NET组件是一个非常强大的邮件发送.邮件接收等功能的开源组件,一般用它来处理邮件的相关操作,是非常合适的.之前也写过一些该组件的随笔文章,不过主要是利用来发送邮件居多,最近由于项目需要,需要利用该组件来接收邮件,邮件通过POP3协议进行接收到本地,故对该组件进行了全面的了解和使用.本文主要是在此背景上,介绍该组件的POP3协议处理类的使用.Lumisoft.NET组件2013年作者有做了一定的更新,修复了一些问题,本文是基于该组件的最新版本进行开发使用. 1.POP3登录及头部

基于libuv库的UDP收/发广播消息代码实现

uv_send(发送端): 1 #include "uv.h" 2 #include "task.h" 3 4 #include <stdio.h> 5 #include <stdlib.h> 6 #include <string.h> 7 8 static uv_udp_t client; 9 10 static uv_loop_t *loop; 11 12 static void alloc_cb(uv_handle_t* h

通知中心的只用NSNotificationCenter传值 和打电话,发短信,邮件,打开网页的直接打开的功能

通知中心的使用 第一个页面三部; 产生一个通知中心的对象(系统的一个单例类) 在通知中心注册一个观察者 收到通知后调用的方法 dealloc移除观察者的身份 第二个页面 发送通知中心 创建一个字典 返回你要的数据 直接跳转的功能     //直接跳入的功能;     //打电话     [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"tel://110"]];     //发短信     [[UIApp

超级邮件群发机12.32完美破解版---日轻松发万封邮件,方法对了每天发不了万封你骂我

前几天发了一个邮件群发工具,很多人回复,被推荐和置顶,感觉很开心,上回第二次发贴就有这么多的朋友支持我,有你们的支持是我奋斗的动力,今后将提供更多更优质的绝对给力小工具给大家,上回发了贴后很多人加我QQ问我怎么用,说真的那个软件非常简单,一看就会用,但有些朋友问我怎么发几封就发的出收不到了,这里我不再多讲,关键是你发的内容是否合法,再好的软件你拼命发重复的内容,肯定容易被和谐,软件显示发送成功,可能你收不到,这也正常,这需要你有更多的发件箱了.还有些人说软件不太强大,邮件内容只能写文字,没有高级

基于卷积神经网络(CNN)的中文垃圾邮件检测

前言 跳过废话,直接看正文 文本分类任务是一个经久不衰的课题,其应用包括垃圾邮件检测.情感分析等. 传统机器学习的做法是先进行特征工程,构建出特征向量后,再将特征向量输入各种分类模型(贝叶斯.SVM.神经网络等)进行分类. 随着深度学习的发展以及RNN.CNN的陆续出现,特征向量的构建将会由网络自动完成,因此我们只要将文本的向量表示输入到网络中就能够完成自动完成特征的构建与分类过程. 就分类任务而言,CNN比RNN更为合适.CNN目前在图像处理方向应用最为广泛,在文本处理上也有一些的应用.本文将

关于crontab定时任务执行失败发送报错邮件的问题

前几天,发现一个在服务器通过crontab执行的一个java程序,突然不执行了.后来经过排查,是由于运维在其他项目上线的时候,不知道什么原因,导致crontab中jar文件的执行,通过java -jar执行不了了,必须修改为java的全路径/usr/java/jdk1.7.0_79/bin/java -jar才可以执行.原因因该是java的一些什么路径问题,这个没有具体去了解. 就打算在程序中添加一个监控,不然程序挂了也不知道,必须数据出现问题了,才有可能发现问题. 首先,在程序中添加监控是没有

记一个发HTML格式邮件的问题

很早做了一个自动发邮件的程序,前一向发现Notes升级后反而CSS样式都没有了. 起初不以为意,反正格式数据在,客户也没说啥,后来觉得这样的态度要不得,小洞不补,大洞吃苦. 于是查查资料,发现浏览器里显示正常的CSS在邮件客户端里未必正常显示,看来我中招了. 发邮件的程序大概有七个,只有一个CSS样式正常,于是就拿它和其它六个对比.再结合网上资料,发现是以下原因导致的: 1.邮件里的HTML代码不支持CSS短格式,需要一行行单写. 2.邮件里HTML代码不支持TR样式,如果需要间隔色,着重色需要