在vs2005中使用Jmail发送邮件问题

jmail.Message Jmail = new jmail.Message();

            DateTime t = DateTime.Now;
            String Subject = " From EMail .net";
            String body = "你好科学12:15";
            String FromEmail = "jsyxo@163.com";
            String ToEmail = "jjsyxo@163.com";
            //Silent属性:如果设置为true,JMail不会抛出例外错误. JMail. Send( () 会根据操作结果返回true或false
            Jmail.Silent = true;
            //Jmail创建的日志,前提loging属性设置为true
            Jmail.Logging = true;
            //字符集,缺省为"US-ASCII"
            Jmail.Charset = "GB2312";
            //信件的contentype. 缺省是"text/plain") : 字符串如果你以HTML格式发送邮件, 改为"text/html"即可。
            Jmail.ContentType = "text/html";
            //添加收件人
            Jmail.AddRecipient(ToEmail, "", "");
            Jmail.From = FromEmail;
            //发件人邮件用户名
            Jmail.MailServerUserName = "jsyxo";
            //发件人邮件密码
            Jmail.MailServerPassWord = "111111";
            //设置邮件标题
            Jmail.Subject = Subject;
            //邮件添加附件,(多附件的话,可以再加一条Jmail.AddAttachment( "c:\\test.jpg",true,null);)就可以搞定了。[注]:加了附件,讲把上面的Jmail.ContentType="text/html";删掉。否则会在邮件里出现乱码。
            //Jmail.AddAttachment("c:\\test.jpg", true, null);
            //邮件内容
            Jmail.Body = body + t.ToString();
            //Jmail发送的方法
            Jmail.Send("smtp.163.com", false);
            Jmail.Close();

=====================
用的是Jmail4.3


经过测试没问题可以多发!

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

就是我在Visual Studio .Net 2005命令提示下编译执行 tlbimp c:\Program Files\Dimac\w3JMail4\jmail.dll /out:myJmail.dll /namespace:myJmail

我的代码如下:
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Web.Mail;
using System.Web.Util;
using myJmail;

using Tool;
using Manager;
using Entity;

public partial class UserControls_Jmaill : System.Web.UI.UserControl
{
    string strCurrentPath = DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString();
    protected void Page_Load(object sender, EventArgs e)
    {
    }
    protected void btnSend_Click(object sender, EventArgs e)
    {
        try
        {
            this.lblTitle.Text = "发送邮件控件";
            myJmail.Message Jmail = new myJmail.Message();
            DateTime t = DateTime.Now;
            String Subject = this.txtTitle.Text;
            String body = this.txtContent.Text;
            String FromEmail = this.txtFormEmail.Text;//你的email
            String ToEmail = this.txtToEmail.Text;//对方的email
            String AddAttachment = this.FileUploadSubject.PostedFile.FileName;
            //Silent属性:如果设置为true,JMail不会抛出例外错误. JMail. Send( () 会根据操作结果返回true或false
            Jmail.Silent = true;
            //Jmail创建的日志,前提loging属性设置为true
            Jmail.Logging = true;
            //字符集,缺省为"US-ASCII"
            Jmail.Charset = "GB2312";
            //信件的contentype. 缺省是"text/plain") : 字符串如果你以HTML格式发送邮件, 改为"text/html"即可。
            Jmail.ContentType = "text/html";
            //添加收件人
            Jmail.AddRecipient(ToEmail, "", "");
            Jmail.From = FromEmail;
            //发件人邮件用户名
            Jmail.MailServerUserName = FromEmail;
            //发件人邮件密码
            Jmail.MailServerPassWord = "kongwei";
            //设置邮件标题
            Jmail.Subject = Subject;
            //邮件添加附件,(多附件的话,可以再加一条Jmail.AddAttachment( "c:\\test.jpg",true,null);)就可以搞定了。[注]:加了附件,讲把上面的Jmail.ContentType="text/html";删掉。否则会在邮件里出现乱码。
            Jmail.AddAttachment(AddAttachment, true, null);
            //邮件内容
            Jmail.Body = body + t.ToString();
            //Jmail发送的方法
            Jmail.Send("smtp.163.com", false);
            Jmail.Close();
        }
        catch (Exception ex)
        {
            this.lblMessage.Text = ex.Message;
        }
    }

错了上面的不能发多个应该是这个
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Web.Mail;
using System.Web.Util;
using myJmail;

using Tool;
using Manager;
using Entity;

public partial class UserControls_Jmaill : System.Web.UI.UserControl
{
    string strCurrentPath = DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString();
    protected void Page_Load(object sender, EventArgs e)
    {
    }
    protected void btnSend_Click(object sender, EventArgs e)
    {
        try
        {
            this.lblTitle.Text = "发送邮件控件";
 
            myJmail.Message Jmail = new myJmail.Message();
            DateTime t = DateTime.Now;
            String Subject = this.txtTitle.Text;
            String body = this.txtContent.Text;
            string FromEmail = this.txtFormEmail.Text.Trim();//你的email
            String ToEmail = this.txtToEmail.Text;//对方的email
            String AddAttachment = this.FileUploadSubject.PostedFile.FileName;
            //Silent属性:如果设置为true,JMail不会抛出例外错误. JMail. Send( () 会根据操作结果返回true或false
            Jmail.Silent = true;
            //Jmail创建的日志,前提loging属性设置为true
            Jmail.Logging = true;
            //字符集,缺省为"US-ASCII"
            Jmail.Charset = "GB2312";
            //信件的contentype. 缺省是"text/plain") : 字符串如果你以HTML格式发送邮件, 改为"text/html"即可。
          //  Jmail.ContentType = "text/html";
            ToEmail = ToEmail.Replace("\n", "").Replace(" ", "");
            string[] str = ToEmail.Split(',');

            for (int i = 0; i < str.Length; i++)
            {
                //添加收件人
                Jmail.AddRecipient(str[i], "", "");
               
                Jmail.From = FromEmail;
                //发件人邮件用户名
                Jmail.MailServerUserName = FromEmail;
                //发件人邮件密码
                Jmail.MailServerPassWord = "";//FromEmail邮箱的登陆密码
                //设置邮件标题
                Jmail.Subject = Subject;
                //邮件添加附件,(多附件的话,可以再加一条Jmail.AddAttachment( "c:\\test.jpg",true,null);)就可以搞定了。[注]:加了附件,讲把上面的Jmail.ContentType="text/html";删掉。否则会在邮件里出现乱码。
                Jmail.AddAttachment(AddAttachment, true, null);
                //邮件内容
                Jmail.Body = body + t.ToString();
                //加密文件
                //Jmail.PGPEncrypt = true;
                //Jmail发送的方法
                Jmail.Send("smtp.163.com", false);
                Jmail.ClearAttachments();
                Jmail.ClearRecipients();
            }
            Jmail.Close();
        }
        catch (Exception ex)
        {
            this.lblMessage.Text = ex.Message;
        }
    }
 
}

posted @ 2006-08-14 13:55  Nina  阅读(916)  评论(1编辑  收藏  举报