asp.net System.Net.Mail发送邮件问题,
下面是代码...............可是.发送出错.错误如下:
“/SimpleMail”应用程序中的服务器错误。
--------------------------------------------------------------------------------
邮箱不可用。 服务器响应为: Óû§±»Ëø¶¨
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.Net.Mail.SmtpException: 邮箱不可用。 服务器响应为: Óû§±»Ëø¶¨
源错误:
行 43: client.Credentials = new NetworkCredential("zuolong126", "qrvbndwskyy555!!");
行 44: //发送
行 45: client.Send(mail);
行 46: Label1.Text = "发送成功";
行 47: }
==========================代码开始=================================
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.Net;
using System.Net.Mail;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
//创建一个Mail实体
MailMessage mail = new MailMessage();
//发件人-注意使用的是MailAddress的实例来包装邮箱地址
mail.From = new MailAddress(MailName.Text);
//收件人-可通过Add方法实现多个收件人的添加
mail.To.Add(new MailAddress(Receive.Text));
//邮件主题
mail.Subject = Subject.Text;
//邮件内容
mail.Body = Body.Text;
//添加附件
Attachment myfile = new Attachment(FileUpload1.PostedFile.FileName);
mail.Attachments.Add(myfile);
//抄送到其它邮箱
mail.CC.Add(new MailAddress(txtcc.Text));
//创建一个邮件服务器类
SmtpClient client = new SmtpClient();
//获取SMTP服务器
client.Host = Smtp.Text;
//SMTP使用的端口-注意格式的转换
client.Port = int.Parse(Port.Text);
//使用邮箱登录名和密码的验证.
client.Credentials = new NetworkCredential("zuolong126", "......"
//发送
client.Send(mail);
Label1.Text = "发送成功";
}
}
=========================代码结束=================================
--------------------编程问答-------------------- 没这么麻烦吧,记得一行代码就能搞定的啊 --------------------编程问答-------------------- 一行代码???
不可能吧.能把代码贴上来吗?? --------------------编程问答-------------------- 代码本身没问题;
问题出在邮件服务器的配制上面,(lz用的是内部邮件服务器还是外部的邮件服务器?),外部邮件服务器(像163)都限制了收件人和发件人的地址了,除非你用自己的邮件服务器自己配制了. --------------------编程问答-------------------- 我是用126的..发送的....用外部邮件服务器呀.可是.126人家是提供外部接口的呀.我刚刚看了呀.在126官方网上 --------------------编程问答-------------------- 怎么一个问题发两个帖呀!126,163等网易的邮箱只有在2005年之前申请才提供stmp发送邮件!新申请的不行!你还是换个邮箱试试吧!如果不行就是你程序有问题了!我给你一个成功的:
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs)
Dim mg As MailMessage = New MailMessage()
mg.From = New MailAddress("chuxue1342@qq.com") '发件人邮箱
mg.To.Add("chuxue1342@avl.com.cn") '收件人邮箱
mg.Subject = "邮件测试" '邮件主题
mg.Body = "测试邮件,,内容为空" '邮件内容
mg.BodyEncoding = System.Text.Encoding.UTF8 '内容编码
mg.IsBodyHtml = True '是否支持HTML格式
mg.Priority = MailPriority.High '优先级别
mg.Attachments.Add(New Attachment("c:\ps.txt")) '添加附件
Dim smtp As SmtpClient = New SmtpClient()
smtp.DeliveryMethod = SmtpDeliveryMethod.Network '邮件发送方式.这里通过网络
smtp.Host = "smtp.qq.com" '邮件发送服务器
smtp.Credentials = New NetworkCredential("113620916", "******") '用户名跟密码
Try
smtp.Send(mg)
Label2.Text = "OK"
Catch ex As Exception
Label2.Text = ex.ToString
End Try
End Sub --------------------编程问答-------------------- 谢谢了,,新浪的可以发哟.. --------------------编程问答--------------------
学习测试了下,用的是QQ的邮件服务器,发送失败,返回如下错误:
命令顺序不正确。 服务器响应为: Error: need EHLO and AUTH first !
哪位朋友解释一下出错原因!
--------------------编程问答-------------------- 我这么用sina 的 也不行啊, 126 ,163,sohu ,
都不行啊。 --------------------编程问答-------------------- 前提条件,本地测试的话,IIS需要配置:
参考:
http://www.cnblogs.com/wknight/archive/2008/12/08/1350620.html
http://www.cnblogs.com/wknight/archive/2008/12/30/1365636.html --------------------编程问答-------------------- 我按照你那样做 报的错误是
SMTP 服务器要求安全连接或客户端未通过身份验证。 服务器响应为: Authentication required --------------------编程问答-------------------- 你IIS的SMTP配置了吗 --------------------编程问答-------------------- 刚申请的邮箱都不支持smtp的,除非是收费邮箱,几年前的可以
QQ的邮箱需要先手动配置下的
5楼正解
补充:.NET技术 , VB.NET