请问哪位大虾能有Jmail发邮件检测方法

showliz 2004-10-13 05:46:04
我做一个自动发邮件的Jmail程序,不知为什么,有时会发个邮件服务器会执行很久才发出去,但其实已经收不到邮件了,我都是照着很多Jmail的程序做的,都没有办法解决这问题。不知是不是我邮件服务器的问题,所以想问有没办法让邮件程序知道邮件没发出去,再重新发。确认100%的邮件成功发出去?程序如下:
'发送邮件(JMail)
'-----------------------------------
set jmail= server.CreateObject ("jmail.message")
jmail.Silent = true
jmail.Charset = "gb2312"
JMail.ContentType = "text/html"
jmail.From = "aa@bb.net" '邮件发送者的邮件地址
jmail.MailServerUserName = "aa" '登录邮件服务器所需的用户名
jmail.MailServerPassWord = "bb.net" '登录邮件服务器所需的密码
jmail.FromName = "aa"
jmail.ReplyTo = "aa@bb.net"
jmail.Subject = "公司"
jmail.AddRecipient StrEmail '邮件收件人的地址
jmail.Body = StrBody
jmail.Priority = 1 '邮件的紧急程序,1 为最快,5 为最慢, 3 为默认值
jmail.Send(smtpserver) '执行邮件发送(通过邮件服务器地址)

jmail.Close
set jmail = nothing
...全文
121 点赞 收藏 11
写回复
11 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
showliz 2004-10-20
dwowbaaa(王一斐) 你的方法我已经试用过,好像不管用。
回复
showliz 2004-10-20
谢谢syspring(和风细雨) 和:dwowbaaa(王一斐) 的回应!总算有人肯回答我;
就syspring(和风细雨)你所说的,我的smtpserver和邮件发送者的邮件地址都是我司管理服务器的人给的,应该没错。而我所没能发出去的邮件不会滞后收到。我那的现象是如果把smtpserver变量不赋值的话,即为空时当发一个邮件,需要等上十秒或几分钟的等待时间,虽然最后出现发送成功的提示,但其实已经是收不到邮件的了,过几天也收不到的。而如果几秒内就出现成功发送邮件的话就很大可能收到信,但极少情况还是会收不到邮件的。
如果把smtpserver变量赋值的话,无论发邮件快慢,都收不到邮件的。
我所不明白是的服务器在发个邮件时为什么等十几秒或几分钟,这段时间内它在干什么呢?我用的网站服务器和邮件服务器是同台机器。
回复
fffddd 2004-10-20
强烈推荐用这个,用的方法和dwowbaaa(王一斐) 的一样。但简单好用得多。不用安装。压缩包里有个演示了,我也正在用。
http://www.77tt.com/soft/show.asp?id=37
回复
dwowbaaa 2004-10-18
sub JMAIL()
on error resume next
Dim JMail
Set JMail=Server.CreateObject("JMail.SMTPMail")
JMail.Logging=True
JMail.Charset="gb2312"
JMail.ContentType = "text/html"
JMail.ServerAddress=SMTPServer
JMail.Sender= fromemail
JMail.Subject= zt
JMail.Body= nr
JMail.AddRecipient toemail
JMail.Priority=3
JMail.Execute
Set JMail=nothing
if err then
SendMail=err.description
err.clear
else
SendMail="ok"
end if
end sub

if SendMail<>"ok" then
response.write("<b>■ 发信失败:服务器不支持当前设置的发信组件!</b>")
else
response.write("<b>■ 成功发出("&i&"封)通知邮件!</b>")
end if
回复
syspring 2004-10-18
如果想检测对方邮箱一定能收到邮件,则需要更复杂的技术,如helo等.
回复
syspring 2004-10-18
我对邮件可以说有一定的研究,按你说的问题,不一定是你的邮件服务器有问题,可能是你的服务器在那个时候刚好不好用。

你的jmail.From = "aa@bb.net" '邮件发送者的邮件地址 和 smtpserver能对应上吗?
如果对应上了,就会好用的,如果不好用,说明服务器不好用,或都邮件滞后,可能第二天才能收到,这都是正常的
回复
showliz 2004-10-18
请问哪位高手能回我,为什么我加了具体邮件服务器就收不到邮件,不加反而有很多时都能正常收到?是不是我的邮件服务器有问题?
回复
showliz 2004-10-15
请问哪位高手能回我,为什么我加了具体邮件服务器就收不到邮件,不加反而有很多时都能正常收到?是不是我的邮件服务器有问题?
回复
showliz 2004-10-14
是啊,忘了这一个问题,我的smtpserver变量就是空的,如果写上详细的邮件服务器地址就一个邮件也发不出,不写就大多能发出来,真是很奇怪啊。
回复
ljupin 2004-10-13
本来jmail的send方法返回的是Boolean值,成功为true,否则为false,你判断这个值就可以了

不过我的测试中,如果发送失败,几乎从来不返回false,显示的是页面错误,现在只能用On Error Resume Next来判断了
回复
yuqianloveme 2004-10-13
smtpserver地址就没有,怎么能发出去呀,
回复
发动态
发帖子
ASP
创建于2007-09-28

2.8w+

社区成员

ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
申请成为版主
社区公告
暂无公告