C#里面的net.mail发送邮件总是失败

C#的net.mail发送邮件的时候,每个邮件服务器发送自己的邮件就可以,比如我设置用QQ邮箱,就可以发送给QQ就可以,但是发送给163的就不行,用163的发送给163就... C# 的net.mail 发送邮件的时候,每个邮件服务器发送自己的邮件就可以,比如我设置用QQ邮箱,就可以发送给QQ就可以,但是发送给163的就不行,用163的发送给163就可以,但是发给QQ就报错。有时候就直接报:发送邮件失败

代码如下:
MailAddress from = new MailAddress("mymail@163.com");
MailAddress to = new MailAddress(strToAddress);

MailMessage Mm = new MailMessage(from, to);
Mm.Subject = strSubject;
Mm.Body = strBody;
Mm.IsBodyHtml = true;

string strSmtpServer = strToAddress.Split('@')[1];

SmtpClient client = new SmtpClient("smtp." + strSmtpServer); client.DeliveryMethod = SmtpDeliveryMethod.Network;
client.UseDefaultCredentials = true;
client.Credentials = new NetworkCredential("username", "password");

//发送邮件
client.Send(Mm);
展开
 我来答
百度网友d8a1812
2015-10-26 · TA获得超过673个赞
知道小有建树答主
回答量:694
采纳率:71%
帮助的人:564万
展开全部
代码示例:
/// <summary>
    /// NetMail方式测试通过
    /// </summary>
    private void TestSend()
    {
        System.Net.Mail.MailMessage mm = new System.Net.Mail.MailMessage();
        //收件人地址
        mm.To.Add(new System.Net.Mail.MailAddress("xxxxxx@163.com", "Name"));
        //发件人地址
        mm.From = new System.Net.Mail.MailAddress("xxxxx@sina.com");
        //这个可以不指定
        //mm.Sender = new System.Net.Mail.MailAddress("xxx@sina.com", "SenderName");、
        mm.Subject = "This is Test Email";
        mm.Body = "<h3>This is Testing SMTP Mail Send By Me</h3>";
        mm.IsBodyHtml = true;
        mm.Priority = System.Net.Mail.MailPriority.High; // 设置发送邮件的优先级
        System.Net.Mail.SmtpClient smtCliend = new System.Net.Mail.SmtpClient();
        //指定邮件服务器
        smtCliend.Host = "smtp.sina.com";
        //smtp邮件服务器的端口号  
        smtCliend.Port = 25;   
        //设置发件人邮箱的用户名和地址,使用公共邮件服务器一般需要提供,不然发送不会成功
        smtCliend.Credentials = new NetworkCredential("xxxxxxx", "xxxxxxx");
        //指定邮件的发送方式
        smtCliend.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network;
        try
        {
            smtCliend.Send(mm);
        }
        catch (System.Net.Mail.SmtpException ex)
        {
            Response.Write(ex.Message);
        }
        catch (Exception ex)
        {
            Response.Write(ex.Message);
        }
    }
摩杜云
2024-07-09 广告
判断一个发送邮件api公司的好坏,不只是看价格,还要考虑很多因素。建议可以多对比几个看看。您可以到摩杜云了解下。摩杜云成立于2019年,依托于公司多年技术沉淀和强大的云计算研发实力,面向全世界各个国家和地区、企业组织和个人开发者,提供全球的... 点击进入详情页
本回答由摩杜云提供
鸢梨的小布丁
推荐于2016-12-06 · TA获得超过2.8万个赞
知道大有可为答主
回答量:2.3万
采纳率:14%
帮助的人:2420万
展开全部
smtp.Send(msg);//
这里总是提示 “未处理代码 SMTPException”
这个是调用语句:
MailSender ms = new MailSender(TextBox2.Text.Trim(),
"您要的密码!",
"您的密码:" + sdr.GetString(0));//
其实就是发送邮件取回密码
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
落月Prc
2011-08-10 · TA获得超过2789个赞
知道大有可为答主
回答量:2011
采纳率:100%
帮助的人:2495万
展开全部
client.Credentials = new NetworkCredential("username", "password");
应该是client.Credentials = new NetworkCredential(username, password);吧!
其他地方没发现问题。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式