首页 新闻 会员 周边 捐助

System.Net.Mail EnableSsl 邮件发送问题

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

是用微软自带的 System.Net.Mail 来发送邮件。

代码如下。

        /// <summary>
        /// 发送邮件
        /// </summary>
        /// <param name="strSmtpServer">邮件服务器地址</param>
        /// <param name="UserName">发送人邮件用户名只需前面部分 如 123@qq.com 123 即为用户名</param>
        /// <param name="Password">邮件密码</param>
        /// <param name="strFrom">发送方邮件地址</param>
        /// <param name="strto">接收方邮件地址</param>
        /// <param name="strSubject">主题</param>
        /// <param name="strBody">内容</param>
        /// <param name="authentication">是否进行身份验证</param>
        /// <returns>bool</returns>
        public static bool SendToMail(string strSmtpServer, string UserName, string Password, string strFrom, string strto, string strSubject, string strBody)
        {
            try
            {
                System.Net.Mail.SmtpClient client = new System.Net.Mail.SmtpClient(strSmtpServer);


                client.UseDefaultCredentials = true;//是否身份验证
                client.Credentials = new System.Net.NetworkCredential(UserName, Password);//身份验证账号密码  主要账号无需后缀名如 123@qq.com  只需填写123 即可。

                client.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network;
                //client.EnableSsl = true;
                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;
                client.Send(message);
                return true;

            }
            catch (Exception ex)
            {
                ErrorLog.WriteError(ex.Message.ToString());
                return false;
            }
        }

如果将 //client.EnableSsl = true; Ssl 加密注释掉就可以发送成功。如果启用了这段断面 就发送不了。高手帮忙。

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

好像用ssl要设置端口号.

奖励园豆:5
I,Robot | 大侠五级 |园豆:9783 | 2010-12-03 00:03
其他回答(1)
0

查看一下帮助文档对该类的说明。

代码苦行僧 | 园豆:311 (菜鸟二级) | 2010-12-03 10:41
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册