当前位置:编程学习 > C#/ASP.NET >>

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 --------------------编程问答-------------------- 谢谢了,,新浪的可以发哟.. --------------------编程问答--------------------
引用 5 楼 chuxue1342 的回复:
怎么一个问题发两个帖呀!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("chuxue…

学习测试了下,用的是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
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,