使用System.Net.Mail通过gmail发送电子邮件
2007-12-14 18:59
721 查看
gmail的smtp采用了ssl连接:
Outgoing Mail (SMTP) Server - requires TLS: smtp.gmail.com (use authentication)
Use Authentication: Yes
Use STARTTLS: Yes (some clients call this SSL)
Port: 465 or 587
知道了gmail的发信细节,用System.Net.Mail,就是下面这段代码就可以了
using System;
using System.Collections.Generic;
using System.Text;
using System.Net;
using System.Net.Mail;
namespace GMailSend
{
class Program
{
static void Main(string[] args)
{
try
{
Program prg = new Program();
prg.Host = "smtp.gmail.com";
prg.SmtpUsername = "zhangshanyou@gmail.com";
prg.SmtpPassword = "xxxxxxxx";
prg.Port = 587;
prg.Send("zhangshanyou@gmail.com","33235911@qq.com", "test", "test", null, null);
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
Console.Read();
}
private string _host;
public string Host
{
get
{ return _host; }
set
{ _host = value; }
}
private int _port;
public int Port
{
get
{ return _port; }
set
{ _port = value; }
}
private string _smtpUsername;
public string SmtpUsername
{
get
{ return _smtpUsername; }
set
{ _smtpUsername = value; }
}
private string _smtpPassword;
public string SmtpPassword
{
get
{ return _smtpPassword; }
set
{ _smtpPassword = value; }
}
public void Send(string from, string to, string subject, string body, string[] cc, string[] bcc)
{
// Create mail message
MailMessage message = new MailMessage(from, to, subject, body);
message.BodyEncoding = Encoding.GetEncoding(936);
if (cc != null && cc.Length > 0)
{
foreach (string ccAddress in cc)
{
message.CC.Add(new MailAddress(ccAddress));
}
}
if (bcc != null && bcc.Length > 0)
{
foreach (string bccAddress in bcc)
{
message.Bcc.Add(new MailAddress(bccAddress));
}
}
// Send email
SmtpClient client = new SmtpClient(this._host, this._port);
if (!String.IsNullOrEmpty(this._smtpUsername) && !String.IsNullOrEmpty(this._smtpPassword))
{
client.Credentials = new NetworkCredential(this._smtpUsername, this._smtpPassword);
}
client.EnableSsl = true;
client.Send(message);
}
}
}
Outgoing Mail (SMTP) Server - requires TLS: smtp.gmail.com (use authentication)
Use Authentication: Yes
Use STARTTLS: Yes (some clients call this SSL)
Port: 465 or 587
知道了gmail的发信细节,用System.Net.Mail,就是下面这段代码就可以了
using System;
using System.Collections.Generic;
using System.Text;
using System.Net;
using System.Net.Mail;
namespace GMailSend
{
class Program
{
static void Main(string[] args)
{
try
{
Program prg = new Program();
prg.Host = "smtp.gmail.com";
prg.SmtpUsername = "zhangshanyou@gmail.com";
prg.SmtpPassword = "xxxxxxxx";
prg.Port = 587;
prg.Send("zhangshanyou@gmail.com","33235911@qq.com", "test", "test", null, null);
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
Console.Read();
}
private string _host;
public string Host
{
get
{ return _host; }
set
{ _host = value; }
}
private int _port;
public int Port
{
get
{ return _port; }
set
{ _port = value; }
}
private string _smtpUsername;
public string SmtpUsername
{
get
{ return _smtpUsername; }
set
{ _smtpUsername = value; }
}
private string _smtpPassword;
public string SmtpPassword
{
get
{ return _smtpPassword; }
set
{ _smtpPassword = value; }
}
public void Send(string from, string to, string subject, string body, string[] cc, string[] bcc)
{
// Create mail message
MailMessage message = new MailMessage(from, to, subject, body);
message.BodyEncoding = Encoding.GetEncoding(936);
if (cc != null && cc.Length > 0)
{
foreach (string ccAddress in cc)
{
message.CC.Add(new MailAddress(ccAddress));
}
}
if (bcc != null && bcc.Length > 0)
{
foreach (string bccAddress in bcc)
{
message.Bcc.Add(new MailAddress(bccAddress));
}
}
// Send email
SmtpClient client = new SmtpClient(this._host, this._port);
if (!String.IsNullOrEmpty(this._smtpUsername) && !String.IsNullOrEmpty(this._smtpPassword))
{
client.Credentials = new NetworkCredential(this._smtpUsername, this._smtpPassword);
}
client.EnableSsl = true;
client.Send(message);
}
}
}
相关文章推荐
- 使用System.Net.Mail通过gmail发送电子邮件
- 使用System.Net.Mail通过gmail发送电子邮件
- 使用System.Net.Mail通过gmail发送电子邮件
- 使用 System.Net.Mail.MailMessage 发送电子邮件
- 使用 System.Net.Mail.MailMessage 发送电子邮件
- Visual Studio 2005-基于应用程序中使用 System.Net.mail.SmtpClient 类发送电子邮件时的錯誤
- 使用 System.Net.Mail.MailMessage 发送电子邮件
- 使用 System.Net.Mail.MailMessage 发送电子邮件
- 使用System.Net.Mail发送电子邮件
- 使用asp.net通过gmail发送电子邮件
- 使用 System.Net.Mail.MailMessage 发送电子邮件
- 使用 System.Net.Mail.MailMessage 发送电子邮件
- C#发送电子邮件的名称空间:System.Net.Mail
- 使用System.Web.Mail 组件通过SMTP认证发送邮件
- 通过“System.Net.Mail” 轻松发送邮件
- 使用System.Net.Mail在程序中发送邮件
- 通过.Net FrameWork 2.0下提供的“System.Net.Mail”可以轻松的实现,本文列举了3种途径来发送:
- 使用System.Net.Mail发送邮件
- 使用System.Web.Mail通过需验证的邮件服务器发送邮件
- 使用System.Net.Mail.SmtpClient 发送邮件