jmail邮件组件在Win7上用不了吗,该如何解决

jmail邮件组件在Win7上用不了吗,该如何解决,第1张

1.首先下载jmail控件,然后安装(其实不安装也行,只要你能找到jmail.dll文件,然后注册该dll文件。这里不支持上传附件,否则我就把我下载的传上来了)。

附上手工注册它的批处理:

echo off

copy jmail.dll C:/windows/system32

regsvr32 jmail.dll

echo 执行完毕!

pause

2.使用tlbimp c:/Program Files/Dimac/w3JMail4/jmail.dll /out:myJmail.dll /namespace:myJmail生成myJmail.dll后,copy到web的根目录的bin目录。

在ASP.Net页面中,用using myjmail方法引用,例程如下:

protected void Page_Load(object sender, EventArgs e)

{

myjmail.Message jmail = new myjmail.Message()

DateTime t=DateTime.Now

string subject = "jmail test from web"

string body= "<center>jmail test from web<br>test</center>"//tbContent.Text.Replace("/n","<br>")

string fromemail="xxxx@e165.com "

string toEmail= "xxxx@e165.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="xxxx"

//发件人邮件密码

jmail.MailServerPassWord="xxxx"

//设置邮件标题

jmail.Subject=subject

// 邮件添加附件,(多附件的话,可以再加一条jmail.addattachment( "c://test.jpg",true,null))就可以搞定了。[注]:加了附件,讲把上面的 jmail.contenttype="text/html"删掉。否则会在邮件里出现乱码。

//jmail.addattachment( "c://test.jpg",true,null)

//邮件内容

jmail.Body=body

//jmail发送的方法

if(jmail.Send("smtp.e165.com",false))

lbResult.Text = "已成功发送邮件。"

else

lbResult.Text = "发送邮件失败!!!"

jmail.Close()

}

1、 安装

跟使用别个组件一样,在使用Jmail邮件组件之前要先安装或注册该组件Jmail.dll。具体注册方法,是先把Jmail.dll文件拷贝到硬盘的某一目录下(如C:\Jmail\Jmail.dll),然后执行命令Regsvr32 C:\Jmail\Jmail.dll即可。

2、 卸载

卸载组件是安装组件的相反动作,可以使用参数/U来卸载已安装的组件,执行命令Regsvr32 /U Jmail.dll即可。

用Jmail组件发送邮件

函数名:SendMail

作 用:用Jmail组件发送邮件

参 数:MailtoAddress ----收信人地址

MailtoName -----收信人姓名

Subject -----主题

MailBody -----信件内容

FromName -----发信人姓名

MailFrom -----发信人地址

Priority -----信件优先级'**************************************************

'函数名:SendMail

'作 用:用Jmail组件发送邮件

'参 数:MailtoAddress ----收信人地址

' MailtoName -----收信人姓名

' Subject -----主题

' MailBody -----信件内容

' FromName -----发信人姓名

' MailFrom -----发信人地址

' Priority -----信件优先级

'**************************************************

function SendMail(MailtoAddress,MailtoName,Subject,MailBody,FromName,MailFrom,Priority)

on error resume next

Dim JMail

Set JMail=Server.CreateObject("JMail.Message")

if err then

SendMail= "<br><li>没有安装JMail组件</li>"

err.clear

exit function

end if

JMail.Charset="gb2312" '邮件编码

JMail.silent=true

JMail.ContentType = "text/html" '邮件正文格式

'JMail.ServerAddress=MailServer '用来发送邮件的SMTP服务器

'如果服务器需要SMTP身份验证则还需指定以下参数

JMail.MailServerUserName = MailServerUserName '登录用户名

JMail.MailServerPassWord = MailServerPassword '登录密码

JMail.MailDomain = MailDomain '域名(如果用"name@domain.com"这样的用户名登录时,请指明domain.com

JMail.AddRecipient MailtoAddress,MailtoName '收信人

JMail.Subject=Subject '主题

JMail.HMTLBody=MailBody '邮件正文(HTML格式)

JMail.Body=MailBody '邮件正文(纯文本格式)

JMail.FromName=FromName '发信人姓名

JMail.From = MailFrom '发信人Email

JMail.Priority=Priority '邮件等级,1为加急,3为普通,5为低级

JMail.Send(MailServer)

SendMail =JMail.ErrorMessage

JMail.Close

Set JMail=nothing

end function

如何使用Jmail组件发送邮件

JMail是目前功能最齐全、稳定及高效的邮件发送组件,我们的Windows系列空间服务器均装有些组件。以下为利用该组件进行邮件发送的示例:

例子一:

<%

Set msg = Server.CreateObject("JMail.Message")

msg.silent = true

msg.Logging = true

msg.Charset = "gb2312"

msg.MailServerUserName = "sales@abc.com" '此为您邮箱的登录帐号,使用时请更改为自己的邮箱登录帐号

msg.MailServerPassword = "56789" '此为您邮箱的登录密码,使用时请更改为自己的邮箱登录密码

msg.From = "sales@abc.com" '发件人Email

msg.FromName = "某某公司" '发件人姓名

msg.AddRecipient "tech@abc.com" '收件人Email

msg.Subject = "Jmail发送测试" '邮件主题

msg.Body = "这是由Jmail组件发送的邮件!" '邮件正文

msg.Send ("mail.abc.com") 'SMTP服务器地址

msg.close()

set msg = nothing

%>

例子二:

<%

name=request.form("name")

email=request.form("email")

note=request.form("note")

Set msg = Server.CreateObject("JMail.Message")

msg.silent = true

msg.Logging = true

msg.Charset = "gb2312"

msg.MailServerUserName = "sales@abc.com" '此为您邮箱的登录帐号,使用时请更改为自己的邮箱登录帐号

msg.MailServerPassword = "56789" '此为您邮箱的登录密码,使用时请更改为自己的邮箱登录密码

msg.From = email '发件人Email

msg.FromName = name '发件人姓名

msg.AddRecipient "tech@abc.com" '收件人Email

msg.Subject = "Jmail发送测试" '邮件主题

msg.Body = "这是由"&name&"订单的邮件,订单留言为"¬e&"" '邮件正文

msg.Send ("mail.abc.com") ' SMTP服务器地址

msg.close()

set msg = nothing

%>

=============================================================

'一个调用 Jmail 过程:

sub Jmail(email)

Dim JMail

Set jmail = Server.CreateObject("JMAIL.Message") '建立发送邮件的对象

jmail.silent = true'屏蔽例外错误,返回FALSE跟TRUE两值j

jmail.logging = true '启用邮件日志

jmail.Charset = "GB2312" '邮件的文字编码为国标

jmail.ContentType = "text/html"'邮件的格式为HTML格式

jmail.AddRecipient email '邮件收件人的地址

jmail.From = "heyitang@heyitang.net" '发件人的E-MAIL地址

jmail.MailServerUserName = "admin" '登录邮件服务器所需的用户名

jmail.MailServerPassword = "pa¥¥word" '登录邮件服务器所需的密码

jmail.Subject = "您在向往神鹰论坛的发言有了回复"'邮件的标题

jmail.Body = mailbody '邮件的内容

'response.write mailbody

'jmail.Prority = 1 '邮件的紧急程序,1 为最快,5 为最慢, 3 为默认值

jmail.Send("mail.heyitang.net") '执行邮件发送(通过邮件服务器地址)

if err then

'SendMail=err.description

'response.write err.description

err.clear

SendMail="OK"

else

SendMail="OK"

'response.write "ok"

end if

jmail.Close() '关闭对象

Set JMail = Nothing

end sub

'在发信的时候:

mailbody="一封测试信"

call jmail(heyitang@heyitang.net )

'群发类似:

mailbody="一封测试信"

'循环对所有用户发信

if rs("useremail")<>"" then

email=rs("useremail")

call jmail(email)

rs.movenext

loop

====================================

重要提示:

发现很多文章谈到Jmail,但是没有谈到Smtp验证。

很多Asp程序发的邮件被退回,就是因为Smtp验证的问题。

<%

Dim Jmail

Set Jmail=server.createobject("Jmail.Message")

Jmail.Charset = "gb2312"

Jmail.Silent = true

Jmail.Priority = 3

Jmail.MailServerUserName = "xyp@chinalabs.com" ' 这里换成您的SMTP验证帐号

Jmail.MailServerPassword = "********" ' 这里填写您的SMTP认证密码

Jmail.From = "xyp@chinalabs.com"' 发信人邮件地址

Jmail.FromName = "发信人姓名" '

Jmail.Subject = "信件主题" '

Jmail.AddRecipient "abc@abc.com" ' 收信人地址

Jmail.Body = mailbody ' Mailbody参数是信件正文

Jmail.Send("xxx.xyz.com") ' 这里填写发件服务器,如mail.8sea.com,需要与SMTP验证信息对应

Set Jmail=nothing

jmail组件注册有问题,可能跟操作系统有关系

可以看看这里

http://topic.csdn.net/t/20050421/17/3956093.html


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/56458.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-02-26
下一篇2023-02-26

发表评论

登录后才能评论

评论列表(0条)

    保存