本人代码发送邮件完全没有问题,但是邮件无法执行。查看原因是:
subject: =?gb2312?b?c2hlbm13YW55aTExMQ==?=
Content-Type: text/html; charset="gb2312"
MIME-Version: 1.0
Content-Transfer-Encoding: base64用其他发送html邮件的工具邮件有以上代码。我的代码发送的邮件如下:(应该是系统自己加上去的)Subject: =?utf-8?B?5bey5oiQ5Yqf6I635Y+WSVDlnLDlnYA=?=
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: quoted-printable请教如何发送让邮件服务器识别的html邮件,请大家给个例子。网上找到那种IsBodyHtml = true;不能完全发送html邮件。请教如何发送具有完整标头的支持html邮件???本人使用vs2008开发,winform程序。
subject: =?gb2312?b?c2hlbm13YW55aTExMQ==?=
Content-Type: text/html; charset="gb2312"
MIME-Version: 1.0
Content-Transfer-Encoding: base64用其他发送html邮件的工具邮件有以上代码。我的代码发送的邮件如下:(应该是系统自己加上去的)Subject: =?utf-8?B?5bey5oiQ5Yqf6I635Y+WSVDlnLDlnYA=?=
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: quoted-printable请教如何发送让邮件服务器识别的html邮件,请大家给个例子。网上找到那种IsBodyHtml = true;不能完全发送html邮件。请教如何发送具有完整标头的支持html邮件???本人使用vs2008开发,winform程序。
{
MailMessage MyMail = new MailMessage();
MyMail.From = new MailAddress("", "");
MyMail.To.Add(new MailAddress(""));
MyMail.Subject = Mailtitle;
MyMail.Body = MailCon;
MyMail.IsBodyHtml = true;
SmtpClient smtpclient = new SmtpClient();
smtpclient.DeliveryMethod = SmtpDeliveryMethod.Network;
smtpclient.Host = "";
smtpclient.Credentials = new System.Net.NetworkCredential(MailFrom, MailPwd);
smtpclient.Send(MyMail);
}
jmail.Message Jmail = new jmail.Message();
DateTime t = DateTime.Now;
String Subject = "";
String body = "";
String FromEmail = "";
String ToEmail = "";
Jmail.Charset = "GB2312";
Jmail.ContentType = "text/html";
Jmail.AddRecipient(ToEmail, "", "");
Jmail.From = FromEmail;
Jmail.MailServerUserName = "";
Jmail.MailServerPassWord = "";
Jmail.Subject = Subject;
Jmail.ContentType="text/html";
Jmail.Body = body + t.ToString();
Jmail.Send("", false);
Jmail.Close(); message.Body ="";
client.Send(message);
{
MailMessage MyMail = new MailMessage();
MyMail.From = new MailAddress("", "");
MyMail.To.Add(new MailAddress(""));
MyMail.Subject = Mailtitle;
MyMail.Body = MailCon;
MyMail.IsBodyHtml = true;
SmtpClient smtpclient = new SmtpClient();
smtpclient.DeliveryMethod = SmtpDeliveryMethod.Network;
smtpclient.Host = "";
smtpclient.Credentials = new System.Net.NetworkCredential(MailFrom, MailPwd);
smtpclient.Send(MyMail);
}
jmail.Message Jmail = new jmail.Message();
DateTime t = DateTime.Now;
String Subject = "";
String body = "";
String FromEmail = "";
String ToEmail = "";
Jmail.Charset = "GB2312";
Jmail.ContentType = "text/html";
Jmail.AddRecipient(ToEmail, "", "");
Jmail.From = FromEmail;
Jmail.MailServerUserName = "";
Jmail.MailServerPassWord = "";
Jmail.Subject = Subject;
Jmail.ContentType="text/html";
Jmail.Body = body + t.ToString();
Jmail.Send("", false);
Jmail.Close(); message.Body ="";
client.Send(message);
{
MailMessage MyMail = new MailMessage();
MyMail.From = new MailAddress("", "");
MyMail.To.Add(new MailAddress(""));
MyMail.Subject = Mailtitle;
MyMail.Body = MailCon;
MyMail.IsBodyHtml = true;
SmtpClient smtpclient = new SmtpClient();
smtpclient.DeliveryMethod = SmtpDeliveryMethod.Network;
smtpclient.Host = "";
smtpclient.Credentials = new System.Net.NetworkCredential(MailFrom, MailPwd);
smtpclient.Send(MyMail);
}
jmail.Message Jmail = new jmail.Message();
DateTime t = DateTime.Now;
String Subject = "";
String body = "";
String FromEmail = "";
String ToEmail = "";
Jmail.Charset = "GB2312";
Jmail.ContentType = "text/html";
Jmail.AddRecipient(ToEmail, "", "");
Jmail.From = FromEmail;
Jmail.MailServerUserName = "";
Jmail.MailServerPassWord = "";
Jmail.Subject = Subject;
Jmail.ContentType="text/html";
Jmail.Body = body + t.ToString();
Jmail.Send("", false);
Jmail.Close(); message.Body ="";
client.Send(message);
wuyq11前辈请问您试过没有?? 用您给的代码实现不了。。我要的是标准的报头。
http://topic.csdn.net/u/20101217/09/fb908fee-10d4-4cc3-a57b-853034a87431.html
/// <summary>
/// 发送邮件
/// </summary>
/// <param name="ToEmail">邮件目标地址(收件人)</param>
/// <param name="FromEmail">邮件来源地址(发件人)</param>
/// <param name="Subject">邮件主题</param>
/// <param name="Content">邮件的内容</param>
/// <param name="UserName">用户名(发件人)</param>
/// <param name="UserPwd">用户密码(发件人)</param>
/// <param name="Host">主机服务器类型(发件人):126,163,sina</param>
/// <returns>发送结果</returns>
public string SendEmail(string ToEmail, string FromEmail, string Subject, string Content, string UserName, string UserPwd,string Host)
{
SmtpClient client = new SmtpClient();
client.Host = "smtp."+Host+".com";
client.UseDefaultCredentials = false;
client.Credentials = new NetworkCredential(UserName, UserPwd);
client.DeliveryMethod = SmtpDeliveryMethod.Network;
MailMessage message = new MailMessage(FromEmail, ToEmail);
message.Subject = Subject;
message.Body = Content;
message.BodyEncoding = Encoding.GetEncoding("gb2312");
message.IsBodyHtml = true;
Attachment data = new Attachment (@"E:\C__读写SQL数据库Image字段.txt",MediaTypeNames.Application.Octet);
message.Attachments.Add(data);
try
{
client.Send(message);
return "邮件发送成功!";
}
catch (Exception ex)
{
return "邮件发送失败,失败原因:" + ex.Message;
}
}试试这个
MyMail.From = new MailAddress("[email protected]");
MyMail.To.Add(new MailAddress("[email protected]"));
MyMail.Subject = "hello";
MyMail.Body = "<a href='www.163.com' class='plus'>网易</a>";
MyMail.IsBodyHtml = true;
SmtpClient smtpclient = new SmtpClient();
smtpclient.DeliveryMethod = SmtpDeliveryMethod.Network;
smtpclient.Host = "smtp.163.com";
smtpclient.Credentials = new System.Net.NetworkCredential("aaaa", "123456");
smtpclient.Send(MyMail);