公司业务要求做一套邮件系统。
一. 收件箱             所谓的收件箱就是通过Internet网上注册的邮箱,通过pop3协议过去到此系统代收 邮件和 附件。
二 .发件箱      通过我自己所绑定邮箱中的其中一个Email ,此Email通过外网向另一个邮箱发送邮件以及附件。我所邦定的邮箱有 126,163,sohu ,sina ,还有其他的 。 如果我用smtp 协议的话,那我就要通过多个 smtp ,  比如说:我现在用163的发邮件,我的那个协议记得改为 163.smtp。。
我在网上找资料的时候 ,别人说 126,163,sohu ,sina 等不支持 smtp 和 pop3  协议 ,MAPI协议 才能完成收发邮件。有没有免费 的   哪种协议可以支持多种邮箱的   。

我用C#写   web 程序      在这个命名空间下  using System.Net.Mail; 知道的给一些文档或源码      小弟先谢了。

解决方案 »

  1.   

    不可能不支持。。qq邮箱都支持smtp
      

  2.   

    用gmail吧  gmail支持smtp
      

  3.   

    一般邮箱都支持SMTP和POP协议,只不过服务器有没有开放的问题
    例如163对于免费邮箱,早期(大概是2005年前)都支持,再之后的就不支持如果要支持的话,收费的邮箱是肯定支持的,包括Hotmail的邮箱
    这点可以想象,都给你钱了,还非得要我上你网站收发邮件啊?
      

  4.   

    163可以,不过我是以前注册的
    用gmail可以的
      

  5.   

    公司内部系统中用的    发写了个简单的发邮件的,就是出不来,     收邮件程序不知道该怎么写??
    using System.Net.Mail;
    public partial class _Default : System.Web.UI.Page 
    {
        protected void Page_Load(object sender, EventArgs e)
        {
             MailMessage mail = new MailMessage(); 
            //发件人-注意使用的是MailAddress的实例来包装邮箱地址 
             mail.From = new MailAddress("[email protected]");
           
            //收件人-可通过Add方法实现多个收件人的添加 
           // mail.To.Add(new MailAddress("[email protected]")); 
            mail.To.Add("[email protected]");
            //邮件主题 
            mail.Subject = "邮件测试"; 
            //邮件内容 
            mail.Body ="邮件测试成功";
            mail.SubjectEncoding = System.Text.Encoding.UTF8 ;
            //添加附件 
           // Attachment myfile = new Attachment(FileUpload1.PostedFile.FileName); 
         //   mail.Attachments.Add(myfile); 
            //抄送到其它邮箱 
           // mail.CC.Add(new MailAddress(txtcc.Text)); 
            //创建一个邮件服务器类 
            mail.IsBodyHtml = true;              //是否为html格式 
            mail.Priority = MailPriority.High;  //发送邮件的优先等级         SmtpClient client = new SmtpClient();
            client.UseDefaultCredentials = true; 
            //获取SMTP服务器 
          //  client.Host = "smtp.163.com"; 
            //SMTP使用的端口-注意格式的转换 
          /// client.Port = 25; 
            //使用邮箱登录名和密码的验证. 
         
            client.Credentials = new System.Net.NetworkCredential(mail.From.Address, "****");
            client.Host = "smtp." + mail.From.Host;
            client.DeliveryMethod = SmtpDeliveryMethod.Network;
            try 
            {
                //发送
                client.Send(mail);
                Response.Write("<script>alert('成功');</script>");
            }
            catch(Exception ex)
            {
                throw ex;
            }

        
        }
    }
    错误是     :  在邮件标头中找到无效的字符。 
     这个问题跟我 计算机名是中文的有影响吗?
     谁知道收邮件的顺便教小弟一下 。。      小弟的 msn :  [email protected]
      

  6.   

    公司内部系统中用的    发写了个简单的发邮件的,就是出不来,     收邮件程序不知道该怎么写??
    using System.Net.Mail;
    public partial class _Default : System.Web.UI.Page 
    {
        protected void Page_Load(object sender, EventArgs e)
        {
             MailMessage mail = new MailMessage(); 
            //发件人-注意使用的是MailAddress的实例来包装邮箱地址 
             mail.From = new MailAddress("[email protected]");
           
            //收件人-可通过Add方法实现多个收件人的添加 
           // mail.To.Add(new MailAddress("[email protected]")); 
            mail.To.Add("[email protected]");
            //邮件主题 
            mail.Subject = "邮件测试"; 
            //邮件内容 
            mail.Body ="邮件测试成功";
            mail.SubjectEncoding = System.Text.Encoding.UTF8 ;
            //添加附件 
           // Attachment myfile = new Attachment(FileUpload1.PostedFile.FileName); 
         //   mail.Attachments.Add(myfile); 
            //抄送到其它邮箱 
           // mail.CC.Add(new MailAddress(txtcc.Text)); 
            //创建一个邮件服务器类 
            mail.IsBodyHtml = true;              //是否为html格式 
            mail.Priority = MailPriority.High;  //发送邮件的优先等级         SmtpClient client = new SmtpClient();
            client.UseDefaultCredentials = true; 
            //获取SMTP服务器 
          //  client.Host = "smtp.163.com"; 
            //SMTP使用的端口-注意格式的转换 
          /// client.Port = 25; 
            //使用邮箱登录名和密码的验证. 
         
            client.Credentials = new System.Net.NetworkCredential(mail.From.Address, "****");
            client.Host = "smtp." + mail.From.Host;
            client.DeliveryMethod = SmtpDeliveryMethod.Network;
            try 
            {
                //发送
                client.Send(mail);
                Response.Write("<script>alert('成功');</script>");
            }
            catch(Exception ex)
            {
                throw ex;
            }

        
        }
    }
    错误是     :  在邮件标头中找到无效的字符。 
     这个问题跟我 计算机名是中文的有影响吗?
     谁知道收邮件的顺便教小弟一下 。。      小弟的 msn :  [email protected]
      

  7.   


            private void Start()
            {
                try // 捕获线程中止异常
                {
                    while (true) // 一直循环,直到线程被中止。但每次只处理一个连接
                    {
                        //判断数据中是否有要发送的信息                    SmtpClient smtpc = new SmtpClient();
                        MailMessage mailMessage = new MailMessage();
                        string strBody;
                        mailMessage.From = new MailAddress("[email protected]");       //发件人
                        mailMessage.To.Add("[email protected]");       //发件人
                        mailMessage.Subject = "中文测试";                   //主题
                        strBody = "<br/>内容";                                    //内容
                        mailMessage.Body = strBody;                                     //内容
                        mailMessage.IsBodyHtml = true;                                  //是否HTML
                        mailMessage.BodyEncoding = Encoding.GetEncoding("UTF-8");       //邮件编码
                        mailMessage.SubjectEncoding = Encoding.GetEncoding("UTF-8");    //主题编码
                        try
                        {
                            sendMail(mailMessage);
                            SetStatus("发送成功");
                        }
                        catch (Exception ex)
                        {
                            log.Error("发送失败:" + ex.Message);
                        }
                       
                    }            }
                catch (Exception e)
                {
                    log.Error("发送失败:" + e.Message);
                    InvokeCancel();
                    return;
                }
                finally
                {
                    worker = null;
                }
            }
            /// <summary>
            /// 发送邮件
            /// </summary>
            /// <param name="mail"></param>
            private void sendMail(MailMessage mail)
            {
                SmtpClient smtpClient = new SmtpClient();
                //是否SSL
                //if (M_SendMail.Ts_Mail_SMTP_SSL == 0)
                //{
                    smtpClient.EnableSsl = false;
                //}
                //else
                //{
                    //smtpClient.EnableSsl = true;
                //}            smtpClient.Host = "smtp.163.com";              //smtp主机名
                smtpClient.Port = 25 ;               //smtp 端口     
                smtpClient.Credentials = new NetworkCredential("[email protected]","******");//用户名  密码            smtpClient.Send(mail);        }
      

  8.   

    下个 LumiSoft.Net 里面的POP类很强大的。。什么都有。。http://download.csdn.net/source/516884
      

  9.   

    呵呵,很简单,你下载个Jmail4.4专业版,有说明和示例的,一看就明白了
      

  10.   

    发邮件好写,收邮件不好写的建议安装一个mail服务器吧,多么简单的事
      

  11.   


    用这个的时候, 我加到我的项目中去, 有个问题,     报有几个对象没有引用  
    LumiSoft.Net加入我的项目中的时候是不是首先要引用什么类吗?
    收邮件 我知道用 pop3和MAPI 这两种协议, 但我对这两个协议 ,不怎么了解。。
      

  12.   

    我在网上找的时候,  我用这个LumiSoft.Net.POP3.Client,我添加到我的程序里的时候,我编译居然报错,
    说我SocketAsyncEventArgs缺少引用,   但我已经引用了 System.Net.Sockets;这是为什么啊 ???