首页 新闻 赞助 找找看

关于.net 邮件发送 身份验证的问题。

0
[已解决问题] 解决于 2012-12-05 14:53

在我们使用 .net   System.Net.Mail进行邮件发送的时候。如果邮件服务器没有启用身份验证。那么发送时通过如下代码可以发送。

 /// <summary>
        /// 发送邮件
        /// </summary>
        /// <param name="strSmtpServer">邮件服务器地址</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>
        /// <param name="fujian">附件</param>
        /// <returns>bool</returns>
        public static bool SendMail(string strSmtpServer, string UserName, string Password, string strFrom, string strto, string strSubject, string strBody,string fujian)
        {
            try
            {
                System.Net.Mail.SmtpClient client = new System.Net.Mail.SmtpClient(strSmtpServer);
                client.UseDefaultCredentials = true;
                client.Credentials = new System.Net.NetworkCredential(UserName, Password);
                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");
                message.IsBodyHtml = true;
               
                message.Priority = System.Net.Mail.MailPriority.High;
                if (!string.IsNullOrEmpty(fujian))
                {
                    message.Attachments.Add(new System.Net.Mail.Attachment(fujian));
                }
                          
                client.Send(message);
                return true;

            }
            catch (Exception)
            {
                return false;
            }

        }

如果启用了身份验证的话 这个代码好像就发布出去了。请问。如果邮件系统启用了身份验证的话。应该怎么写才能发送邮件成功

yzy的主页 yzy | 菜鸟二级 | 园豆:317
提问于:2010-12-01 10:37
< >
分享
最佳答案
0

你前面不是已经指定过一次身份信息了吗?后面怎么又加一次,还把用户名写错了.

client.Credentials = new System.Net.NetworkCredential(strFrom, Password);

奖励园豆:5
I,Robot | 大侠五级 |园豆:9783 | 2010-12-02 22:45
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册