ASP.Net发送邮件如何配置

wangzhaoli1982 2007-03-20 02:21:22
代码:
MailMessage mailObj = new MailMessage();

mailObj.From = this.txtfrom.Text;
mailObj.To = this.txtto.Text;
mailObj.Subject = "标题";
mailObj.Body = "邮件内容";

mailObj.BodyFormat = MailFormat.Html;
mailObj.Priority = MailPriority.High;
mailObj.Attachments.Add(new MailAttachment("D:\\新建 文本文档.txt"));

SmtpMail.Send(mailObj);

运行后出现:
“SendUsing”配置值无效。
这个错误,请问该如何配置呢?
...全文
3436 25 打赏 收藏 转发到动态 举报
写回复
用AI写文章
25 条回复
切换为时间正序
请发表友善的回复…
发表回复
lion_6 2008-05-06
  • 打赏
  • 举报
回复
junzhang4008
的代码测试通过
IT_zen 2007-03-21
  • 打赏
  • 举报
回复
mark
  • 打赏
  • 举报
回复
晕,是mcafee 把。我当时也是。^_^
wangzhaoli1982 2007-03-20
  • 打赏
  • 举报
回复
终于成功了 我那防火墙挡住鸟 谢谢各位
  • 打赏
  • 举报
回复
/// <summary>
/// 发送邮件
/// </summary>
/// <param name="strSmtpServer">smtp地址</param>
/// <param name="UserName">用户名</param>
/// <param name="Password">密码</param>
/// <param name="strFrom">发信人地址</param>
/// <param name="strto">收信人地址</param>
/// <param name="strSubject">邮件标题</param>
/// <param name="strBody">邮件正文</param>
public static void SendMail(string strSmtpServer, string UserName, string Password, string strFrom, string strto, string strSubject, string strBody, string strFileName)
{
//生成一个 使用SMTP发送邮件的客户端对象
System.Net.Mail.SmtpClient client = new System.Net.Mail.SmtpClient(strSmtpServer);

//表示以当前登录用户的默认凭据进行身份验证
client.UseDefaultCredentials = true;



//包含用户名和密码
client.Credentials = new System.Net.NetworkCredential(UserName, Password);

//指定如何发送电子邮件。
//Network 电子邮件通过网络发送到 SMTP 服务器。
//PickupDirectoryFromIis 将电子邮件复制到挑选目录,然后通过本地 Internet 信息服务 (IIS) 传送。
//SpecifiedPickupDirectory 将电子邮件复制到 SmtpClient.PickupDirectoryLocation 属性指定的目录,然后由外部应用程序传送。

client.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network;

//建立邮件对象
System.Net.Mail.MailMessage message = new System.Net.Mail.MailMessage(strFrom, strto, strSubject,strBody);

//定义邮件正文,主题的编码方式
message.BodyEncoding = System.Text.Encoding.GetEncoding("gb2312");
message.SubjectEncoding = System.Text.Encoding.GetEncoding("gb2312");

//获取或设置一个值,该值指示电子邮件正文是否为 HTML。
message.IsBodyHtml = false;

//指定邮件优先级

message.Priority = System.Net.Mail.MailPriority.Normal;

//添加附件
//System.Web.Mail.MailAttachment mailAttachment=new System.Web.Mail.MailAttachment(@"f:/baihe.txt");
if (strFileName != "" && strFileName != null)
{
Attachment data = new Attachment(strFileName);
message.Attachments.Add(data);
}


//发件人身份验证,否则163 发不了
client.Credentials = new System.Net.NetworkCredential(strFrom, Password)


//发送
client.Send(message);
}





===================================

vs2005 调试通过
Cnaspnet 2007-03-20
  • 打赏
  • 举报
回复
下个JMAIL组建吧。。一网都是,LZ可以去看看,随便搜搜,到处都是方法..
wangzhaoli1982 2007-03-20
  • 打赏
  • 举报
回复
Donny_zhang(海豚) ( ) 我按你的试了
是这个结果还是不行 你还做了别的什么吗

邮件无法发送到 SMTP 服务器。传输错误代码为 0x800ccc15。服务器响应为 not available

调用代码:
TestMail t=new TestMail("myth0131@yahoo.com.cn","邮件内容","标题");
t.sengmill_net();
你的类我写成:
public class TestMail
{
string tb_from;
string tb_to;
string tb_mailBody;
string tb_smtpserver;
//string tb_name;
string tb_body;
string tb_sub;
public TestMail(string to ,string body,string sub)
{


tb_to=to.Trim();
//tb_name=name.Trim();
tb_body=body.Trim();
tb_sub=sub.Trim();


}

public void sengmill_net()
{


tb_from="wangzhaoli1982@163.com";

tb_mailBody=tb_body;
tb_smtpserver="smtp.163.com";
System.Web.Mail.MailMessage mailmsg = new System.Web.Mail.MailMessage();
mailmsg.From = tb_from;
mailmsg.To = tb_to;
mailmsg.Body = tb_mailBody;
mailmsg.Subject =tb_sub;


mailmsg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "1");
//是否需要验证,一般是要的
mailmsg.Fields.Add ("http://schemas.microsoft.com/cdo/configuration/sendusername", "wangzhaoli1982");
//自己邮箱的用户名
mailmsg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", "XXXXX");
//自己邮箱的密码
System.Web.Mail.SmtpMail.SmtpServer = tb_smtpserver;
System.Web.Mail.SmtpMail.Send(mailmsg);
}
Donny_zhang 2007-03-20
  • 打赏
  • 举报
回复
//我这段代码可以呀.我刚刚还发送成功了.
using System;
using System.Web.Mail;


namespace XXXX
{
/// <summary>
/// TestMail 的摘要说明。
/// </summary>
public class TestMail
{
string tb_from;
string tb_to;
string tb_mailBody;
string tb_smtpserver;
//string tb_name;
string tb_body;
string tb_sub;
public TestMail(string to ,string body,string sub)
{


tb_to=to.Trim();
//tb_name=name.Trim();
tb_body=body.Trim();
tb_sub=sub.Trim();


}

public void sengmill_net()
{


tb_from="XXXXXX@163.com";

tb_mailBody=tb_body;
tb_smtpserver="smtp.163.com";
System.Web.Mail.MailMessage mailmsg = new System.Web.Mail.MailMessage();
mailmsg.From = tb_from;
mailmsg.To = tb_to;
mailmsg.Body = tb_mailBody;
mailmsg.Subject =tb_sub;


mailmsg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "1");
//是否需要验证,一般是要的
mailmsg.Fields.Add ("http://schemas.microsoft.com/cdo/configuration/sendusername", "XXXXXX");
//自己邮箱的用户名
mailmsg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", "XXXXX");
//自己邮箱的密码
System.Web.Mail.SmtpMail.SmtpServer = tb_smtpserver;
System.Web.Mail.SmtpMail.Send(mailmsg);
}

}
}

////调用代码
TestMail t=new TestMail("对方email地址","邮件内容","标题");
t.sengmill_net();



wangzhaoli1982 2007-03-20
  • 打赏
  • 举报
回复
没人知道了吗?有没有能成功发送的例子啊
wangzhaoli1982 2007-03-20
  • 打赏
  • 举报
回复
我加了SmtpMail.SmtpServer = "smtp.163.com";也不行啊 郁闷

我现在的程序是:
MailMessage mailObj = new MailMessage();

mailObj.From = this.txtfrom.Text;
mailObj.To = this.txtto.Text;
mailObj.Subject = "标题";
mailObj.Body = "邮件内容";

mailObj.BodyFormat = MailFormat.Html;
mailObj.Priority = MailPriority.High;
mailObj.Attachments.Add(new MailAttachment("D:\\新建 文本文档.txt"));

mailObj.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "1");
mailObj.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", "wangzhaoli1982");
mailObj.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", "XXXXXXX");

SmtpMail.SmtpServer = "smtp.163.com";
SmtpMail.Send(mailObj);

结果还是不行
jjyjjyjjy 2007-03-20
  • 打赏
  • 举报
回复
错了,smtp.163.com
jjyjjyjjy 2007-03-20
  • 打赏
  • 举报
回复
smpt.163.com
wangzhaoli1982 2007-03-20
  • 打赏
  • 举报
回复
你这个tb_smtpserver还是要赋值的啊~~~问题是我 现在如果发163的邮件 不知道设置smtp服务器啊 有人知道吗?
Donny_zhang 2007-03-20
  • 打赏
  • 举报
回复
你实例化一个这个类,然后直接调用sengmill_net()发放就可以了.
Donny_zhang 2007-03-20
  • 打赏
  • 举报
回复
//给你个邮件发送类,看看有用吗
using System;
using System.Web.Mail;


namespace midlink_healthcare
{

public class TestMail
{
string tb_from;
string tb_to;
string tb_mailBody;
string tb_smtpserver;

string tb_body;
string tb_sub;
public TestMail(string to ,string body,string sub)
{


tb_to=to.Trim();
//tb_name=name.Trim();
tb_body=body.Trim();
tb_sub=sub.Trim();


}

public void sengmill_net()
{


tb_from="xxx@xxxx.com";//你使用的邮箱名字

tb_mailBody=tb_body;
tb_smtpserver="xxx.xx.xxx.xxx";//你使用的邮件服务器的ip地址
System.Web.Mail.MailMessage mailmsg = new System.Web.Mail.MailMessage();
mailmsg.From = tb_from;
mailmsg.To = tb_to;
mailmsg.Body = tb_mailBody;
mailmsg.Subject =tb_sub;


mailmsg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "1");
//是否需要验证,一般是要的
mailmsg.Fields.Add ("http://schemas.microsoft.com/cdo/configuration/sendusername", "xxxxx");
//自己邮箱的用户名
mailmsg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", "xxxxxxx");
//自己邮箱的密码
System.Web.Mail.SmtpMail.SmtpServer = tb_smtpserver;
System.Web.Mail.SmtpMail.Send(mailmsg);
}

}
}
XJY123 2007-03-20
  • 打赏
  • 举报
回复
引入:using System.Web.Mail;
声明:
private System.Web.Mail.MailMessage m_Mail;
XJY123 2007-03-20
  • 打赏
  • 举报
回复
//'定义SMTP服务器的名称


//m_Mail.SmtpServer = "smtp.163.com"; //2.0中不用也可以
m_Mail.From = "xxx@126.com "; ;

// '定义邮件的接收地址

m_Mail.To = " xxxx@yahoo.com.cn";

//'定义邮件的暗送地址

//'m_Mail.Bcc "aa@sina.com"
//
//'定义邮件的抄送地址

// 'm_Mail.Cc = "aaa@sina.com"

//'定义邮件的主题

m_Mail.Subject = "主题";

//'定义邮件的主体

m_Mail.Body = "xxx,hello!欢迎你的加入.";

//'邮件以 HTML的格式发送

m_Mail.BodyFormat = MailFormat.Html;

// '定义邮件的有限级,在此设定为高

m_Mail.Priority = MailPriority.High;

//'给发送的邮件附加上一个附件

//m_Mail.Attachments.Add(new MailAttachment("c:\\A.txt"));

SmtpMail.Send(m_Mail);
wangzhaoli1982 2007-03-20
  • 打赏
  • 举报
回复
楼上说的该怎么做呢?能不能发个例子?谢谢
sanlng 2007-03-20
  • 打赏
  • 举报
回复
用第三方的邮件专发组件吧!这样写太费劲了
wangzhaoli1982 2007-03-20
  • 打赏
  • 举报
回复
那我现在要发送163的邮件 那个SmtpMail.SmtpServer该写什么呢?怎么查smtp的服务器啊
加载更多回复(5)

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧