这是我的邮件系统的相关代码,可是怎么都无法实现邮件的发送,我不知道是哪里错了,求教老鸟!!!!!!!!!
我用的是VS2008,是基于SMTP协议的。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Xml;using System.Net;
using System.Net.Mail;namespace 邮件系统
{
    public partial class Form1 : Form
    {
        MailMessage msg;
        Attachment data;
        public Form1()
        {
            InitializeComponent();
        }        private void button1_Click(object sender, EventArgs e)
        {
            if (openFileDialog1.ShowDialog() == DialogResult.OK)
            {
                attachtextBox.Text = openFileDialog1.FileName;
                //msg = new MailMessage(fromtextBox.Text.Trim(), totextBox.Text.Trim());
                //data = new Attachment(openFileDialog1.FileName);
                //msg.Attachments.Add(data);
            }
        }        private void sendbutton_Click(object sender, EventArgs e)
        {
           
            try
            {
                if (fromtextBox.Text == "" )
                {
                    MessageBox.Show("邮件地址不能为空!", "错误提示!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                if (totextBox.Text =="")
                {
                    MessageBox.Show("邮件地址不能为空!", "错误提示!", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                else
                {
                    msg = new MailMessage(fromtextBox.Text.Trim(), totextBox.Text.Trim());
                    data = new Attachment(openFileDialog1.FileName);
                    msg.Attachments.Add(data);                    string[] sep = fromtextBox.Text.Split(new char[] { '@', '.' });
                    string site = "smtp" + sep[1] + "com";
                    SmtpClient client = new SmtpClient(site);
                    client.UseDefaultCredentials = false;
                    client.Credentials = new NetworkCredential(fromtextBox.Text.Trim(), pwdtextBox.Text.Trim());
                    client.DeliveryMethod = SmtpDeliveryMethod.Network;                    msg.Subject = sujecttextBox.Text.Trim();
                    msg.Body = bodyrichTextBox.Text;
                    client.Send(msg);
                    MessageBox.Show("电子邮件已发送到" + totextBox.Text);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message .ToString());
            }
        }        private void exitbutton_Click(object sender, EventArgs e)
        {
            Application.Exit();
        }        private void Form1_Load(object sender, EventArgs e)
        {
            //XmlDocument doc = new XmlDocument();
            //doc.Load("adress.xml");            
        }
    }
}

解决方案 »

  1.   

    public void MailSend(string MailFrom,string MailTo,string MailPwd,string Mailtitle,string MailCon) 

    MailMessage MyMail = new MailMessage(); 
    MyMail.From = new MailAddress("", ""); 
    MyMail.To.Add(new MailAddress("")); 
    MyMail.Subject = Mailtitle; 
    MyMail.Body = MailCon; 
    MyMail.IsBodyHtml = false; 
    SmtpClient smtpclient = new SmtpClient(); 
    smtpclient.DeliveryMethod = SmtpDeliveryMethod.Network; 
    smtpclient.Host = ""; 
    smtpclient.Credentials = new System.Net.NetworkCredential(MailFrom, MailPwd); 
    smtpclient.Send(MyMail); 

    jmail.Message Jmail = new jmail.Message(); 
    DateTime t = DateTime.Now; 
    String Subject = ""; 
    String body = ""; 
    String FromEmail = ""; 
    String ToEmail = ""; 
    Jmail.Charset = "GB2312"; 
    Jmail.ContentType = "text/html"; 
    Jmail.AddRecipient(ToEmail, "", ""); 
    Jmail.From = FromEmail; 
    Jmail.MailServerUserName = ""; 
    Jmail.MailServerPassWord = ""; 
    Jmail.Subject = Subject; 
    Jmail.ContentType="text/html"; 
    Jmail.Body = body + t.ToString(); 
    Jmail.Send("", false); 
    Jmail.Close();