发送邮件,试了好几种方式,服务器设置成sina就可以发送,设置成163就不可以...求解!

解决方案 »

  1.   


    /// <summary>
        ///  审核成功后发送邮件
        /// </summary>
        /// <param name="Obj"></param>
        /// <param name="E"></param>
        public string SendMail()
        {
            string strFromName = ddlWorkerId.SelectedItem.Text.ToString();//发件人
            string strTitleName = txtTitle.Text.ToString();//公告标题
            string strContentName = txtContent.Text.ToString();//公告备注
            string strPathName = Session["Path"].ToString();//获取附件名
            string strTypesName = ddlNoticeType.SelectedItem.Text.ToString();//公告类别
            try
            {
                MailAddress from = new MailAddress("[email protected]");//发邮件人:专门申请用来发邮件的
                MailAddress to = new MailAddress("[email protected]");//
                MailMessage message = new MailMessage(from, to);
                message.Subject = txtTitle.Text;//发送邮件的标题
                message.Body = strFromName + " 发布标题为:《" + strTitleName + "》,备注为:“" + strContentName + "”,附件名称为:“"+
                               strPathName + "”,类别为:“" + strTypesName + "”的公告已通过审核,请及时查收和编辑。";//发送邮件的内容            #region //发送附件
                if (strPathName != "")
                {//发送附件
                    Attachment att = new Attachment(Server.MapPath("../Upfile/Notice/") + strPathName);
                    message.Attachments.Add(att);
                }
                #endregion            SmtpClient client = new SmtpClient("smtp.163.com");
                client.UseDefaultCredentials = false;
                client.Credentials = new NetworkCredential("[email protected]", "密码");
                client.DeliveryMethod = SmtpDeliveryMethod.Network;
                message.IsBodyHtml = true;            client.Send(message);
                return strEmaiError="1"; //发送文件成功
            }
            catch (Exception ex)
            {
                //throw ex;
                return strEmaiError = "2";//发送文件失败
            }
        }我就用的163可以,qq邮箱不行,你试下,可以就给分哈