我要用ASP.NET开发一个邮件发送系统。可惜实在不知道应该如何下手,请大家帮助哈,救命啊!!

解决方案 »

  1.   

    网上搜索JMail,有中文帮助的,收发都可以
      

  2.   

    给你一个邮件类,别人给我的,呵呵!功能基本都有
    http://www.journeychina.com/MailClient.rar
      

  3.   

    Jmail怎么用啊~~我安装好了,可是不知道再怎么弄
      

  4.   

    麻烦哈,我现在不用Jmail组件,还有其他方法可以接收邮件吗?最好是直接跟pop3协议打交道的,麻烦高手指教啊
      

  5.   

    jmail,imail都可以的
    你去差查
      

  6.   

    http://blog.csdn.net/goody9807/category/20098.aspx
      

  7.   

    发送、接收邮件 
    副标题: 
    作者:未知 文章来源:CodeProject 点击数:6 更新时间:11/2/2004 
     
     
    Send Email:add these code lines for when the use clicks the Send button: private void SendBtn_Click(object sender, System.EventArgs e)
    {
     // change cursor into wait cursor
     Cursor cr = Cursor.Current;
     Cursor.Current = Cursors.WaitCursor; // create server SMTP with port 25
     TcpClient SmtpServ = new TcpClient(ServSMTP.Text,25);
     string Data;
     byte[] szData;
     string CRLF = "\r\n";
     LogList.Items.Clear();    try
     {
      // initialization
      NetworkStream NetStrm = SmtpServ.GetStream();
      StreamReader  RdStrm= new StreamReader(SmtpServ.GetStream());
      LogList.Items.Add(RdStrm.ReadLine());
       
      // say hello to server and send response into log report
      Data = "HELLO server " + CRLF;    
      szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());
      NetStrm.Write(szData,0,szData.Length);
      LogList.Items.Add(RdStrm.ReadLine());
      // send sender data
      Data = "MAIL FROM: " + "<" + sFrom.Text + ">" + CRLF;
      szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());
      NetStrm.Write(szData,0,szData.Length);
      LogList.Items.Add(RdStrm.ReadLine());  // send receiver data
      Data = "RCPT TO: " + "<" + sTo.Text + ">" + CRLF;
      szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());
      NetStrm.Write(szData,0,szData.Length);
      LogList.Items.Add(RdStrm.ReadLine());  // send DATA
      Data = "DATA " + CRLF;
      szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());
      NetStrm.Write(szData,0,szData.Length);
      LogList.Items.Add(RdStrm.ReadLine());      // send content data
      Data = "SUBJECT: " + sSubject.Text + CRLF + sMessage.Text + CRLF + "." + CRLF;
      szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());
      NetStrm.Write(szData,0,szData.Length);
      LogList.Items.Add(RdStrm.ReadLine());      // quit from server SMTP
      Data = "QUIT " + CRLF;
      szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());
      NetStrm.Write(szData,0,szData.Length);
      LogList.Items.Add(RdStrm.ReadLine());      // close connection
      NetStrm.Close();
      RdStrm.Close();
      LogList.Items.Add("Close connection");
      LogList.Items.Add("Send mail successly..");  // back to normal cursor
      Cursor.Current = cr; }
     catch(InvalidOperationException err)
     {
      LogList.Items.Add("Error: "+ err.ToString());
     }
    }
    -------------------------------------- 
      

  8.   

    Retrieve Mail:It's easy to implement an application if we know the algorithm to retrieve mail from a POP server. In this article, I use the TcpClient and NetworkStream classes. Firstly, declare public variables:  public TcpClient Server;
     public NetworkStream NetStrm;
     public StreamReader  RdStrm;
     public string Data;
     public byte[] szData;
     public string CRLF = "\r\n";Here's the code for when the Connect Button is clicked: private void ConnectBtn_Click(object sender, System.EventArgs e)
    {
        // change cursor into wait cursor
        Cursor cr = Cursor.Current;
        Cursor.Current = Cursors.WaitCursor;    // create server POP3 with port 110
        Server = new TcpClient(POPServ.Text,110);
        Status.Items.Clear();    try
        {
            // initialization
            NetStrm = Server.GetStream();
            RdStrm= new StreamReader(Server.GetStream());
            Status.Items.Add(RdStrm.ReadLine());        // Login Process
            Data = "USER "+ User.Text+CRLF;
            szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());
            NetStrm.Write(szData,0,szData.Length);
            Status.Items.Add(RdStrm.ReadLine());        Data = "PASS "+ Passw.Text+CRLF;
            szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());
            NetStrm.Write(szData,0,szData.Length);
            Status.Items.Add(RdStrm.ReadLine());        // Send STAT command to get information ie: number of mail and size
            Data = "STAT"+CRLF;
            szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());
            NetStrm.Write(szData,0,szData.Length);
            Status.Items.Add(RdStrm.ReadLine());        // change enabled - disabled button
            ConnectBtn.Enabled = false;
            DisconnectBtn.Enabled = true;
            RetrieveBtn.Enabled = true;        // back to normal cursor
            Cursor.Current = cr;    }
        catch(InvalidOperationException err)
        {
            Status.Items.Add("Error: "+err.ToString());
        }
    }    Here's the code for when the Disconnect Button is clicked: private void DisconnectBtn_Click(object sender, System.EventArgs e)
    {
        // change cursor into wait cursor
        Cursor cr = Cursor.Current;
        Cursor.Current = Cursors.WaitCursor;    // Send QUIT command to close session from POP server
        Data = "QUIT"+CRLF;
        szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());
        NetStrm.Write(szData,0,szData.Length);
        Status.Items.Add(RdStrm.ReadLine());    //close connection
        NetStrm.Close();
        RdStrm.Close();    // change enabled - disabled button
        ConnectBtn.Enabled = true;
        DisconnectBtn.Enabled = false;
        RetrieveBtn.Enabled = false;    // back to normal cursor
        Cursor.Current = cr;
    }Here's code when Retrieve Button clicked: private void RetrieveBtn_Click(object sender, System.EventArgs e)
    {
        // change cursor into wait cursor
        Cursor cr = Cursor.Current;
        Cursor.Current = Cursors.WaitCursor;
        string szTemp;
        Message.Clear();
        try
        {
            // retrieve mail with number mail parameter
            Data = "RETR "+ Number.Text+CRLF;
            szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());
            NetStrm.Write(szData,0,szData.Length);        szTemp = RdStrm.ReadLine();
            if(szTemp[0]!='-') 
            {
            
                while(szTemp!=".")
                {
                    Message.Text += szTemp;
                    szTemp = RdStrm.ReadLine();
                }
            }
            else
            {
                Status.Items.Add(szTemp);
            }
            
            // back to normal cursor
            Cursor.Current = cr;    }
        catch(InvalidOperationException err)
        {
            Status.Items.Add("Error: "+err.ToString());
        }}
      

  9.   

    ASP.Net环境下使用Jmail组件发送邮件:配置环境:.Net Framework 1.1,Imai8.02,w3Jmail4.3实现过程:不同于在Asp中使用Jmail,直接使用 Server.CreateObject("Jmail.Message")就可以了。在.Net环境中,需要进行设置。1.安装jmail4.3 2.找到jmail.dll(Program Files\Dimac\w3JMail4下)3.执行Program Files\Microsoft Visual Studio .NET\FrameworkSDK\Bin\ildasm.exe(可使用Visual Studio .Net 2003 命令提示),格式如下:tlbimp c:\Program Files\Dimac\w3JMail4\jmail.dll /out:myJmail.dll /namespace:myJmail生成myJmail.dll后,copy到web的根目录的bin目录。在ASP.Net页面中,用这个方法引用:Jmail.aspx<%@ Page Language="C#" ContentType="text/html"%><%@ Import Namespace="myJmail" %><script runat="server">
    </script>
      

  10.   

    上面的内容的地址:
    http://www.52z.com/info/ArticleView/2004-11-7/Article_View_36319.Htm
      

  11.   

    谢谢各位,我再试试Jmail怎么弄,非常感谢,到结帖时,马上给分,谢谢各位
      

  12.   

    我已经把发送邮件的功能实现了,没有用Jmail.但是现在要做接收系统,.net里pop3协议并非像照顾smtp协议那样,让人舒适,在加上对POP3 协议的理解又不是很深,所以,我想找个简单点的方法,或者其他捷径!我现在登录的pop3服务器,都是需要用户名和密码的,还要能够接收附件!先谢谢大家,有什么好点的参考和意见,继续跟帖,等我功能实现后,马上给分,分不够,大家喊啊!!!谢谢各位的帮助!!