附上手工注册它的批处理:
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
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)