我用jmail发信,jmail也引用了,总是第一次能成功,以后就再也不行了.总是得到"false"的返回.到底是怎么回事啊.!!!
这是我的代码:
===============================================================
private void Button1_Click(object sender, System.EventArgs e)
{
Message jmailobj=new Message();
jmailobj.Logging=true;
jmailobj.Silent=true;
jmailobj.ReturnReceipt = true;
jmailobj.MailServerUserName="[email protected]"; //发信邮件服务器的帐号
jmailobj.MailServerPassWord="123456"; //密码
jmailobj.Body="ok";
jmailobj.Charset="gb2312"; 
jmailobj.Subject="这个是JMAIL测试!";
jmailobj.From="[email protected]";
jmailobj.FromName="test";
jmailobj.AddRecipient("[email protected]","Name","A"); //收件人地址
jmailobj.Priority =1; try
{
if(jmailobj.Send("smtp.163.com",false)) 
{
Response.Write("ok"); 
}
else 
{
Response.Write("false");
} }
catch (Exception ex)
{
Response.Write(ex.Message);
} }
===========================================================================

解决方案 »

  1.   

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Dim PostMail As jmail.Message = New Message
            PostMail.Silent = True '屏蔽例外错误,返回FALSE跟TRUE两值
            PostMail.ISOEncodeHeaders = False '是否将信头编码成iso-8859-1字符集
            PostMail.ContentType = "text/html" '邮件的格式为HTML格式
            PostMail.Charset = "GB2312" '邮件的文字编码为国标
            PostMail.ContentTransferEncoding = "base64" '内容编码
            PostMail.From = "[email protected]" '发件人的E-MAIL地址
            PostMail.MailServerUserName = "hackate" '登录邮件服务器所需的用户
            PostMail.MailServerPassWord = "123456" '登录邮件服务器所需的密码
            PostMail.FromName = "[email protected]" '邮件发件人姓名
            PostMail.AddRecipient("[email protected]") '邮件收件人的地址
            PostMail.Subject = TextBox2.Text.Trim '邮件的标题
            PostMail.Body = TextBox3.Text.Trim '邮件的内容
            PostMail.Send("smtp.163.com") '开始发送
            PostMail.Close() '关闭连接
        End Sub我的代码。你参考下
      

  2.   

    可能你的是用完后没有close的原因
      

  3.   

    现在close也用了,还是不行.  csdn的关于jmail的文档我都看了. 但是发是能发了,就是只能发一次.以后再发都是失败.
      

  4.   

    报错是这个:The message was undeliverable. All servers failed to receive the message大家来看看啊.
      

  5.   

    http://sh.hishopsoft.com/doc/viewdoc.aspx?id=51
      

  6.   

    我目前在用的,自己写的方法::当然前提是你包含了jmail.dll#region * -----发送邮件----- *
    public static void SendMail(string strBuyerNo,string strPassword,string strActiveCode,string strEmail,int flag)
    {
    jmail.Message  Jmail=new jmail.Message();

    string strTemp = "";
    if(flag == 1) //1,表示每一次注册
    strTemp = "您的密码:";
    else if(flag == 2) //2,表示修改Email后发送的邮件
    strTemp = "为了您的安全您的密码改为:";
    DateTime t=DateTime.Now;   
    String Subject="我的拍信件:尊敬的用户,完成最后一步,您的注册就成功了!";   
    String buyerNo = strBuyerNo;
    String password = strPassword;
    String activeCode = strActiveCode;
    String FromEmail="[email protected]";   
    String ToEmail=strEmail; Jmail.Silent=true;
    Jmail.Logging=true;
    Jmail.Charset="GB2312";
    Jmail.ContentType="text/html"; Jmail.AddRecipient(ToEmail,"","");
    Jmail.From=FromEmail; Jmail.MailServerUserName="xgj_ll" ;
    Jmail.MailServerPassWord="821020" ; Jmail.Subject=Subject;
    //Jmail.AddAttachment( "c:\\test.jpg",true,null);
    Jmail.Body="尊敬的用户,您好!;<br><br>感谢您注册我的拍会员!<br><br>您的拍号:<b>"+buyerNo+"</b><br>"+strTemp+"<b>"+password+"</b><br><br>激活您的帐号:<a href='http://localhost:8080/regist/active.aspx?activeFlag=1&buyerNo="+buyerNo+"&regCode="+activeCode+"'><b>点击这里激活</b></a><br><br><br><br><br>如果您不能看到或者点击以上链接:<br>1. 写下您的激活码:"+activeCode+" <br> 2. 请在浏览器中输入以下链接或复制后贴到浏览器中:<a href='http://localhost:8080/regist/active.aspx?buyerNo="+buyerNo+"&email="+strEmail+"'>http://localhost:8080/regist/active.aspx</a><br> 3. 请输入您的邮箱地址和激活码, 完成注册。<br> 4. 如果需进一步帮助,请联系客服人员。<br><br><br>                 "+t.ToString();
    Jmail.Send("smtp.163.com",false);
    Jmail.Close() ;
    }
    #endregion
      

  7.   

    mazei(马贼)            非常感谢!!!!!