protected void btnSend_Click(object sender, EventArgs e)
    {
        string From = txtMailFrom.Text;
        string To = txtMailTo.Text;
        string Subject = txtMailSubject.Text;
        string Text = FCKeditor1.Value;
        //string Att = fudAtt.PostedFile.FileName;
        SendMail(From, To, Subject, Text);
    }
    private void SendMail(string MailFrom, string MailTo, string MailSubject, string MailText)
    {
        //直接用SmtpMail发送邮件
        try
        {
            MailMessage MM = new MailMessage(MailFrom, MailTo);
            MM.Subject = MailSubject;
            MM.Body = MailText;
            MM.Attachments.Add(new Attachment(fudAtt.PostedFile.InputStream,fudAtt.FileName));
            MM.BodyEncoding = System.Text.Encoding.UTF8;
            MM.IsBodyHtml = true;
            SmtpClient smtp = new SmtpClient();
            smtp.Send(MM);
            FCKeditor1.Value = "";
            reg.msg("邮件发送成功");
        }
        catch(Exception ex)
        {
            reg.msg("邮件发送失败请重新发送");        }
    }是不是这一句非要设置 服务器啊 SmtpClient smtp = new SmtpClient();
我设置成这样 SmtpClient smtp = new SmtpClient("smtp.163.com");
还是提示失败啊谁有个成功的例子贴出来下 谢谢我在网上找了半天 放在我的代码里面就是运行不了啊 要带附件的 谢谢

解决方案 »

  1.   

    书上的一个例子:protected void btSubmit_Click(object sender, EventArgs e)
        {
            //设置MailMessage类的to属性所需的MailAddress
            MailAddress toAddress = new MailAddress(this.tbReceiver.Text);
            //设置MailMessage类的from属性所需的MailAddress
            MailAddress fromAddress = new MailAddress(this.tbSender.Text);
            //新建一个MailMessage类实例
            MailMessage message = new MailMessage(fromAddress, toAddress);
            //设置这个实例的Subject属性
            message.Subject = this.tbSubject.Text;
            //设置这个实例的Body属性
            message.Body = this.tbMessage.Text;
            //添加附件
            //获得文件
            HttpPostedFile postedFile = file.PostedFile;
            //当有附件时
            if (postedFile.ContentLength != 0)
            {
                //声明一个Attachment类实例
                Attachment data = new Attachment(postedFile.FileName);
                message.Attachments.Add(data);
            }
            //设置正文格式
            if (rblFormat.SelectedItem.Text == "纯文本格式")
                message.IsBodyHtml = false;
            else
                message.IsBodyHtml = true;
            //添加抄送地址
            if (this.tbCc.Text != "")
            {
                MailAddress ccAddress = new MailAddress(this.tbCc.Text);
                message.CC.Add(ccAddress);
            }
            //添加暗送地址
            if (this.tbBcc.Text != "")
            {
                MailAddress bccAddress = new MailAddress(this.tbBcc.Text);
                message.Bcc.Add(bccAddress);
            }
            //新建一个SmtpClient类的实例
            SmtpClient client = new SmtpClient();
            //设置在本机smtp服务器中绑定的ip地址,本例为本机ip地址
            client.Host = "159.226.58.89";
            //smtp端口,默认为25
            client.Port = 25;
            //发送
            client.Send(message);
            //发送完毕后提示
            Response.Write("<script language='javascript'>alert('发送成功')</script>");
        }是不是没设置smtp端口的问题
      

  2.   

    可能与邮件服务器用关:
    LZ用的是smtp.163.com代理服务器的话,可能只能在本网段内发,如:[email protected]只能发给[email protected],不能外发(原因是163的邮箱限制了外包的功能);
    LZ可以找个没作限制的邮件服务器(或者建自己的邮件服务器)就不受此限制.
      

  3.   

    LZ也可以考虑用jmail,这是我以前的一个贴子:
    http://community.csdn.net/Expert/topic/5455/5455283.xml?temp=9.069461E-02