最近我们部门头,让我研究一下收邮件的功能。因为工作忙的原因一直没时间查找。先前也查到这个控件并且把源码和帮助都下载到本地了。就是没时间看。周末终于有时间研究一下了。
下面是下载源码的地址:
下载LumiSoft.Net类库,并下载LumiSoft.Net文档。下载完后用VS2005把源码打开生成release的。然后引入你需要接收邮件的项目。
下面是接收邮件的类文件
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using LumiSoft.Net.POP3.Client;
using LumiSoft.Net.Mime;
using System.Collections.Generic;
/// <summary>
/// pop 的摘要说明
/// </summary>
public class pop
{
public List<Mime> GetEmails()
{
//需要首先设置这些信息
string pop3Server = ""; //邮箱服务器 如:"pop.sina.com.cn";或 "pop.tom.com" 好像sina的比较快
int pop3Port=110; //端口号码 用"110"好使。最好看一下你的邮箱服务器用的是什么端口号
bool pop3UseSsl=false;
string username=""; //你的邮箱用户名
string password = ""; //你的邮箱密码
List<string> gotEmailIds=new List<string>();
List<Mime> result = new List<Mime>();
using (POP3_Client pop3 = new POP3_Client())
{
try
{
//与Pop3服务器建立连接
pop3.Connect(pop3Server, pop3Port, pop3UseSsl);
//验证身份
pop3.Authenticate(username, password, false);
//获取邮件信息列表
POP3_ClientMessageCollection infos = pop3.Messages;
foreach (POP3_ClientMessage info in infos)
{
//每封Email会有一个在Pop3服务器范围内唯一的Id,检查这个Id是否存在就可以知道以前有没有接收过这封邮件
if (gotEmailIds.Contains(info.UID))
continue;
//获取这封邮件的内容
byte[] bytes = info.MessageToByte();
//记录这封邮件的Id
gotEmailIds.Add(info.UID);
//解析从Pop3服务器发送过来的邮件信息
Mime mime = Mime.Parse(bytes);
result.Add(mime);
}
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
}
return result;
}
//public void ShowEmail(Mime m)
//{
// Console.WriteLine("From: {0}", m.MainEntity.From.ToAddressListString());
// Console.WriteLine("To: {0}", m.MainEntity.To.ToAddressListString());
// Console.WrtieLine("Time: {0}", m.MainEntity.Date); //发送时间
// Console.WriteLine("Subject: {0}", m.MainEntity.Subject); //主题
// Console.WriteLine("Plain Body: {0}", m.BodyText); //内容
// Console.WriteLine("Html Body: {0}", m.BodyHtml); //HTML格式内容
//}
}
下面是调用上面接收类的
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Collections.Generic;
using LumiSoft.Net.Mime;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
pop p = new pop();
List<Mime> dd = p.GetEmails(); //dd中就可以查找出邮件的内容、主题、发件人等信息。你可以通过调试状态的快速监视查看
foreach (Mime mdd in dd)
{
Page.Response.Write(mdd.MainEntity.Date + "<br><br>"); //发送时间 Page.Response.Write(mdd.MainEntity.Subject + "<br><br>"); //主题
Page.Response.Write(mdd.BodyText + "<br><br>"); //内容
}
//因为时间关系没有写完明天待续。。。
}
}
转自:http://www.cnblogs.com/aprillee/archive/2007/12/17/997117.html
分享到:
相关推荐
LumiSoft.Net.Pop3.Server开发邮件POP3服务器
C# .NET 4.0 LumiSoft.Pop3 个人修改版..解决中文乱码问题
最新的LumiSoft.Net.dll 4.5.5702.26503 支持 SMTP,POP3,IMAP client/server components. MIME,Mail,DNS,FTP components.等,最新版本,推荐下载!
Lumisoft.net pop3和imap接收邮件的方法。有新的方法和旧的方法。
LumiSoft.Net.pop3 帮助文档
LumiSoft.Net C# IMAP,POP3,等等 开发组件。你知道的
LumiSoft.Net网络编程最全的类(c#)含http tcp udp ftp rtp pop3 mime imap icmp mail smtp
Lumisoft.NET组件是一个非常强大的邮件发送、邮件接收等功能的开源组件,一般用它来处理邮件的相关操作,是非常合适的。之前也写过一些该组件的随笔文章,不过主要是利用来发送邮件居多,最近由于项目需要,需要利用...
【ASP.NET编程知识】深入Lumisoft.NET组件POP3邮件接收与删除操作的使用详解.docx
Lumisoft.net pop3 imap接收邮件的例子asp开发的。 我有用Mailkit写了个邮件审批实例,感觉比lumisoft更简单,更快 https://download.csdn.net/download/marshal1991415/11639105
本篇文章介绍了,在Lumisoft.NET组件开发中碰到乱码等一些问题的解决方法。需要的朋友参考下
vb.net 无需第三方控件阅读邮件,2003开发完成,含源码。
org.apache.commons.net.pop3 org.apache.commons.net.smtp org.apache.commons.net.telnet org.apache.commons.net.tftp org.apache.commons.net.time org.apache.commons.net.util org.apache.commons.net....
Lumisoft已封装的dll,直接在工程中引入即可,可以完成C#.net没有提供的POP3实现。
net 包是一个用于操作Internet基础协议(Finger,Whois,TFTP,Telnet,POP3,FTP,NNTP,以及SMTP)的底层API。Net包不仅支持对各种低层次协议的访问,而且还提供了一个高层的抽象。它使得开发者不再需要直接面对...
使用LumiSoft.Net和OpenPop分别实现邮件接收(POP3)协议 并且使用了简单工厂模式将其融合。能实现邮件的接收附件的存储,主题、内容、附件、UID、删除邮件等功能。 主要的是可以直接拿过来使用,且都是开源的,最他...
vb接收email的程序(pop3协议),支持附件.zip