jmail发送邮件出错,jmail.Message: The message was undeliverable. All servers failed to receive

<script type="text/javascript"> </script> <script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"></script>

jmail发送邮件出错,jmail.Message: The message was undeliverable. All servers failed to receive 

jmail发送邮件的实例代码网上很多.但是有些细节如果不配置好,发送失败的可能性很大.

首先说明一下jmail安装配置步骤:

1. JMail 下载地址
  http://hbdx3.skycn.com/down/w3JMail43Personal.exe

2.安装

本人在Windows 2003下面配置,其它系统还没有测试.

安装到目录比如: C:/Program Files/Dimac/w3JMail4/jmail.dll

然后还需要把jmail.dll复制到系统目录,比如C:/WINDOWS/system32

再运行:regsvr32 jmail.dll

这样才算把jmail安装好了.

3.如果出现标题显示的错误,检查下列内容.

(1)、用户名和密码 
在代码里要写上
smtpUser ="用户名" 
smtpPass="密码" 
或是 
objMail.Send("用户名:密码@server.net") 
要写发送端连接的邮件服务器和进入邮件服务器的用户名和密码。用户名和密码一定要存在于服务器上且正确。而且好象用户名和密码最好不要带下划线。 


(2)、.防火墙阻止了网络通讯或网络故障 
有可能防火墙会认为这是蠕虫导致的狂发邮件的情况,所以会禁止群发邮件。 
所以检查防火墙的设置就可能会发现。

(3).jmail组件权限不够 


(4).邮件服务器故障 

(5)测试用的邮件服务器比如:smtp.163.com可能把你列入黑名单,换个邮件服务器发

.尽量不要不停发邮件.


.在 .NET 中使用 Jmail  需要如下设置:
1、安装jmail;
2、找到jmail.dll;
3、注册该组件Jmail.dll,作法是将jmail.dll文件拷贝到system32目录下,再运行命令“regsvr32 jmail.dll”(不包括引号),卸载可运行“regsvr32 /u jmail.dll”;
4、执行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后,将它引用至项目中

事例代码:

<%
/********************************************************************************
  JMail 下载地址
  http://hbdx3.skycn.com/down/w3JMail43Personal.exe
  
 安装之后把jmail.dll放到系统目录
 然后运行:regsvr32 jmail.dll
********************************************************************************/
 //SMTP Server config
 var val_sSMTPServer = "smtp.126.com";
 var mailFrom = "test@126.com";//邮箱地址
 var smtpUser = "username";//邮箱用户名
 var smtpPass = "******";//邮箱密码

 function Rw(dat)
 {
  Response.Write(dat + '/r/n');
  return;
 }
 
 function Rf(dat)
 {
  return Request.Form(dat)();
 }

 function JMailSend(fromName,formMail,toMail,mailSubject,mailBody)
 {
  var objMail = new ActiveXObject( "JMail.Message" );
 
    var subject = mailSubject;
    var body = mailBody;
    var mail = toMail;

    objMail.Logging = true;
    objMail.Charset = "UTF-8";
    objMail.Priority = 3;
    objMail.ContentType = "text/html";

    objMail.From = formMail;
    objMail.FromName = fromName;
    objMail.AddRecipient( mail );
    objMail.Subject = subject;
    objMail.Body = body;

    objMail.MailServerUserName = smtpUser;
    objMail.MailServerPassword = smtpPass;
    objMail.Send( val_sSMTPServer );
     objMail.Close();
 }

/*
碰到这种情况说明网易把IP列入黑名单需要换smtp服务器
The message was undeliverable. All servers failed to receive the message
ClientLogging enabled: Client Remote Address: 127.0.0.1
.execute()
{
  Trying server mail:smtp.163.com
  <- 220 163.com Anti-spam GT for Coremail System (163com[20050206])
  -> EHLO linjin10-sj78xi
  <- 250-mail
250-PIPELINING
250-AUTH LOGIN PLAIN
250-AUTH=LOGIN PLAIN
250 8BITMIME
  -> AUTH LOGIN
Sending authentication data..
 <- 550 用户被锁定
Authentication failed.
  smtp.163.com failed..
  No socket for server. ConnectToServer()
  1 of 1 servers failed
}
*/
%>

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值