公司业务要求做一套邮件系统。
一. 收件箱 所谓的收件箱就是通过Internet网上注册的邮箱,通过pop3协议过去到此系统代收 邮件和 附件。
二 .发件箱 通过我自己所绑定邮箱中的其中一个Email ,此Email通过外网向另一个邮箱发送邮件以及附件。我所邦定的邮箱有 126,163,sohu ,sina ,还有其他的 。 如果我用smtp 协议的话,那我就要通过多个 smtp , 比如说:我现在用163的发邮件,我的那个协议记得改为 163.smtp。。
我在网上找资料的时候 ,别人说 126,163,sohu ,sina 等不支持 smtp 和 pop3 协议 ,MAPI协议 才能完成收发邮件。有没有免费 的 哪种协议可以支持多种邮箱的 。
我用C#写 web 程序 在这个命名空间下 using System.Net.Mail; 知道的给一些文档或源码 小弟先谢了。
一. 收件箱 所谓的收件箱就是通过Internet网上注册的邮箱,通过pop3协议过去到此系统代收 邮件和 附件。
二 .发件箱 通过我自己所绑定邮箱中的其中一个Email ,此Email通过外网向另一个邮箱发送邮件以及附件。我所邦定的邮箱有 126,163,sohu ,sina ,还有其他的 。 如果我用smtp 协议的话,那我就要通过多个 smtp , 比如说:我现在用163的发邮件,我的那个协议记得改为 163.smtp。。
我在网上找资料的时候 ,别人说 126,163,sohu ,sina 等不支持 smtp 和 pop3 协议 ,MAPI协议 才能完成收发邮件。有没有免费 的 哪种协议可以支持多种邮箱的 。
我用C#写 web 程序 在这个命名空间下 using System.Net.Mail; 知道的给一些文档或源码 小弟先谢了。
例如163对于免费邮箱,早期(大概是2005年前)都支持,再之后的就不支持如果要支持的话,收费的邮箱是肯定支持的,包括Hotmail的邮箱
这点可以想象,都给你钱了,还非得要我上你网站收发邮件啊?
用gmail可以的
using System.Net.Mail;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
MailMessage mail = new MailMessage();
//发件人-注意使用的是MailAddress的实例来包装邮箱地址
mail.From = new MailAddress("[email protected]");
//收件人-可通过Add方法实现多个收件人的添加
// mail.To.Add(new MailAddress("[email protected]"));
mail.To.Add("[email protected]");
//邮件主题
mail.Subject = "邮件测试";
//邮件内容
mail.Body ="邮件测试成功";
mail.SubjectEncoding = System.Text.Encoding.UTF8 ;
//添加附件
// Attachment myfile = new Attachment(FileUpload1.PostedFile.FileName);
// mail.Attachments.Add(myfile);
//抄送到其它邮箱
// mail.CC.Add(new MailAddress(txtcc.Text));
//创建一个邮件服务器类
mail.IsBodyHtml = true; //是否为html格式
mail.Priority = MailPriority.High; //发送邮件的优先等级 SmtpClient client = new SmtpClient();
client.UseDefaultCredentials = true; //获取SMTP服务器
// client.Host = "smtp.163.com";
//SMTP使用的端口-注意格式的转换
/// client.Port = 25;
//使用邮箱登录名和密码的验证.
client.Credentials = new System.Net.NetworkCredential(mail.From.Address, "****");
client.Host = "smtp." + mail.From.Host;
client.DeliveryMethod = SmtpDeliveryMethod.Network;
try
{
//发送
client.Send(mail);
Response.Write("<script>alert('成功');</script>");
}
catch(Exception ex)
{
throw ex;
}
}
}
错误是 : 在邮件标头中找到无效的字符。
这个问题跟我 计算机名是中文的有影响吗?
谁知道收邮件的顺便教小弟一下 。。 小弟的 msn : [email protected]
using System.Net.Mail;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
MailMessage mail = new MailMessage();
//发件人-注意使用的是MailAddress的实例来包装邮箱地址
mail.From = new MailAddress("[email protected]");
//收件人-可通过Add方法实现多个收件人的添加
// mail.To.Add(new MailAddress("[email protected]"));
mail.To.Add("[email protected]");
//邮件主题
mail.Subject = "邮件测试";
//邮件内容
mail.Body ="邮件测试成功";
mail.SubjectEncoding = System.Text.Encoding.UTF8 ;
//添加附件
// Attachment myfile = new Attachment(FileUpload1.PostedFile.FileName);
// mail.Attachments.Add(myfile);
//抄送到其它邮箱
// mail.CC.Add(new MailAddress(txtcc.Text));
//创建一个邮件服务器类
mail.IsBodyHtml = true; //是否为html格式
mail.Priority = MailPriority.High; //发送邮件的优先等级 SmtpClient client = new SmtpClient();
client.UseDefaultCredentials = true; //获取SMTP服务器
// client.Host = "smtp.163.com";
//SMTP使用的端口-注意格式的转换
/// client.Port = 25;
//使用邮箱登录名和密码的验证.
client.Credentials = new System.Net.NetworkCredential(mail.From.Address, "****");
client.Host = "smtp." + mail.From.Host;
client.DeliveryMethod = SmtpDeliveryMethod.Network;
try
{
//发送
client.Send(mail);
Response.Write("<script>alert('成功');</script>");
}
catch(Exception ex)
{
throw ex;
}
}
}
错误是 : 在邮件标头中找到无效的字符。
这个问题跟我 计算机名是中文的有影响吗?
谁知道收邮件的顺便教小弟一下 。。 小弟的 msn : [email protected]
private void Start()
{
try // 捕获线程中止异常
{
while (true) // 一直循环,直到线程被中止。但每次只处理一个连接
{
//判断数据中是否有要发送的信息 SmtpClient smtpc = new SmtpClient();
MailMessage mailMessage = new MailMessage();
string strBody;
mailMessage.From = new MailAddress("[email protected]"); //发件人
mailMessage.To.Add("[email protected]"); //发件人
mailMessage.Subject = "中文测试"; //主题
strBody = "<br/>内容"; //内容
mailMessage.Body = strBody; //内容
mailMessage.IsBodyHtml = true; //是否HTML
mailMessage.BodyEncoding = Encoding.GetEncoding("UTF-8"); //邮件编码
mailMessage.SubjectEncoding = Encoding.GetEncoding("UTF-8"); //主题编码
try
{
sendMail(mailMessage);
SetStatus("发送成功");
}
catch (Exception ex)
{
log.Error("发送失败:" + ex.Message);
}
} }
catch (Exception e)
{
log.Error("发送失败:" + e.Message);
InvokeCancel();
return;
}
finally
{
worker = null;
}
}
/// <summary>
/// 发送邮件
/// </summary>
/// <param name="mail"></param>
private void sendMail(MailMessage mail)
{
SmtpClient smtpClient = new SmtpClient();
//是否SSL
//if (M_SendMail.Ts_Mail_SMTP_SSL == 0)
//{
smtpClient.EnableSsl = false;
//}
//else
//{
//smtpClient.EnableSsl = true;
//} smtpClient.Host = "smtp.163.com"; //smtp主机名
smtpClient.Port = 25 ; //smtp 端口
smtpClient.Credentials = new NetworkCredential("[email protected]","******");//用户名 密码 smtpClient.Send(mail); }
用这个的时候, 我加到我的项目中去, 有个问题, 报有几个对象没有引用
LumiSoft.Net加入我的项目中的时候是不是首先要引用什么类吗?
收邮件 我知道用 pop3和MAPI 这两种协议, 但我对这两个协议 ,不怎么了解。。
说我SocketAsyncEventArgs缺少引用, 但我已经引用了 System.Net.Sockets;这是为什么啊 ???