jmail貌似好热,有时间我。。

解决方案 »

  1.   

    使用Jmail.dll的之前先要在本机注册一下 你先打开开始菜单》》运行 输入:
    regsvr32 c:\jmail.dll--->你jmail.dll放哪了 把路径写上然后还要在命名空间引用 using jmail;
    还要在工程中“添加引用”中把 jmail.dll添加进去
    要是这些都还不对 你先把try catch 先去掉  看看到底报什么错误 你都try上了 错误都不显示了
      

  2.   

    这个是我以前写的一个JMAIL的例子 你看看吧://发送邮件,在用.dll文件之前要先进行注册:regsvr32 c:\jmail.dll
    //sendmailtxt发件人的地址
    //sendmailpwd发件人的邮箱密码
    //sendtxt发送邮件的文本内容
    //acceptmailtxt收件人的地址
    private Boolean useJMail(string sendmailtxt,string sendmailpwd,string sendtxt,string acceptmailtxt,string titlemailtxt)
    {
    jmail.MessageClass mail=new jmail.MessageClass();
    bool en;
    try
    {
    string servername=null;
    en = false;
    mail.Charset = "gb2312";
    //发件人地址
    mail.From = sendmailtxt;
    //收件人地址
    mail.AddRecipient(acceptmailtxt,"","");
    mail.Priority = 3;
    mail.Subject = titlemailtxt;
    //发送内容
    mail.HTMLBody = sendtxt;

    //发件人邮箱地址名称
    mail.MailServerUserName = sendmailtxt;
    //收件人邮箱密码
    mail.MailServerPassWord = sendmailpwd; //确定发件人服务器名称**************************************/
    int start=0,end=0;
    string emailservertxt=sendmailtxt;
    for(int i=0;i<emailservertxt.Length;i++)
    {
    if(emailservertxt[i]=='@')
    {
    start=i+1;
    end=emailservertxt.Length-i-1;
    }
    }
    servername=emailservertxt.Substring(start,end);
    /************************************************************/
    //发给收信人邮件
    if(mail.Send("smtp."+servername,en))
    {
    return true;
    }
    else
    {
    return false;
    }
    }
    catch(Exception ex)
    {
    return false;
    }
    } private void sendbtn_Click(object sender, System.EventArgs e)
    {
    if(this.useJMail(this.fromemailtxt.Text,this.fromemailpwd.Text,this.message.Text,this.toemail.Text,this.titletxt.Text))
    {
    this.lblmessage.Text="发送成功!";
    }
    else
    {
    this.lblmessage.Text="发送失败!";
    }
    }
      

  3.   

    给一个发Mail的方法,是经过测试的
    private string SendMail(string MailFrom, string MailTo, string MailTocc, string Subject, string Content, string PRI, string MailServer)
    {
    if (MailFrom!=null && MailFrom.Trim()!="" && MailTo!=null && MailTo.Trim()!="" && Subject!=null && Subject.Trim()!="" && MailServer!=null && MailServer.Trim()!="")
    {
    try
    {
    MailMessage MyEmail = new MailMessage();
    MyEmail.From = MailFrom;
    MyEmail.To = MailTo;
    if (MailTocc!=null && MailTocc.Trim()!="")
    {
    MyEmail.Cc = MailTocc;
    }
    MyEmail.Subject = Subject;
    MyEmail.Body = Content;
    SmtpMail.SmtpServer = MailServer.Trim();
    MyEmail.BodyFormat = MailFormat.Html;
    if (PRI!=null && PRI.Trim()!="0")
    {
    if (PRI=="1")
    {
    MyEmail.Priority = MailPriority.Normal;
    }
    else
    {
    MyEmail.Priority = MailPriority.Low;
    }
    }
    else
    {
    MyEmail.Priority = MailPriority.High;
    } SmtpMail.Send(MyEmail);
    return "1";
    }
    catch(Exception eer)
    {
    return eer.Message;
    }
    }
    else
    {
    return "Email必要参数缺失";
    }
    }
      

  4.   

    参数的说明忘记加上去了
    /// <summary>
    /// 发送邮件
    /// </summary>
    /// <param name="MailFrom">发件人</param>
    /// <param name="MailTo">收件人</param>
    /// <param name="MailTocc">CC</param>
    /// <param name="Subject">主题</param>
    /// <param name="Content">邮件内容</param>
    /// <param name="PRI">优先级</param>
    /// <param name="MailServer">Server</param>
      

  5.   

    jmail.Message msg = new jmail.MessageClass(); msg.Silent = true; //安静发信
    msg.Charset = "gb2312";
    msg.ISOEncodeHeaders = false;
    msg.ContentTransferEncoding = "base64";
    msg.ContentType = "text/html";
    msg.FromName = "张三";
    msg.From = "[email protected]"; 
    msg.AddRecipient("[email protected]",null,null); //送往
    msg.MailServerUserName = "zhangsan";
    msg.MailServerPassWord = "123456";
    msg.Subject = "来自张三的邮件";
    msg.Body = "暂时没有任何信息";

    msg.Send("smtp.163.com",false);
    msg.Close();
      

  6.   

    后来我用了8楼的代码,却发现出现未能访问“CDO.Message”对象这个bug,上面的兄弟门提供的代码!还是不可以发送邮件!本人在线等