asp空间判断jmail组件是否安装或支持的代码

2018-09-06 13:03

阅读:359

  首先,必须有错误继续进行的声明On Error Resume Next
然后尝试简历jmail实例:
Dim JMail

对实例做出判断,如果组件没有安装成功,则没有创建实例:
If JMail Is Nothing Then
Response.Write 不支持
Else
Response.Write 支持
End If

其他组件同样处理,非常简单了。
最好在global文件中处理,里面使用的时候不用那么麻烦了。
最好的方法把邮件生成放到一个表里,然后再说发送的事情。

复制代码 代码如下:
Function IsObjInstalled(strClassString)
On Error Resume Next
IsObjInstalled = False
Err = 0
Dim xTestObj
Set xTestObj = Server.CreateObject(strClassString)
If 0 = Err Then IsObjInstalled = True
Set xTestObj = Nothing
Err = 0
End Function

判断代码:
if IsObjInstalled(JMail.Message) =True then
end if
}

jmail发信函数
复制代码 代码如下:
============================================
jmail发送邮件
============================================
Function Jmail(mailTo,mailTopic,mailBody,mailCharset,mailContentType)

入口参数:
mailTo 收件人email地址
mailTopic 邮件主题
mailBody 邮件正文(内容)
mailCharset 邮件字符集,例如GB2312或US-ASCII
mailContentType 邮件正文格式,例如text/plain或text/html
返回值:
字符串,发送成功后返回OK,不成功返回错误信息
使用方法:
1)设置好常量,即以Const开头的变量
2)使用类似如下代码发信
Dim SendStat
Response.Write SendStat

***************根据需要设置常量开始*****************
Dim ConstFromNameCn,ConstFromNameEn,ConstFrom,ConstMailDomain,ConstMailServerUserName,ConstMailServerPassword

ConstFromNameCn = 彩票网发信人中文姓名(发中文邮件的时候使用),例如‘张三
ConstFromNameEn = bc5发信人英文姓名(发英文邮件的时候使用),例如‘zhangsan
ConstMailDomain = smtp.163.comsmtp服务器地址,例如smtp.163.com
ConstMailServerUserName = jb51@163.comsmtp服务器的信箱登陆名,例如‘zhangsan。注意要与发信人邮件地址一致!
ConstMailServerPassword = 服务器的信箱登陆密码
***************根据需要设置常量结束*****************
-----------------------------以下内容无需改动------------------------------
On Error Resume Next
Dim myJmail
myJmail.Logging = False记录日志
myJmail.ISOEncodeHeaders = False邮件头不使用ISO-8859-1编码
myJmail.ContentTransferEncoding = base64邮件编码设为base64
myJmail.AddHeader Priority,3添加邮件头,不要改动!
myJmail.AddHeader MSMail-Priority,Normal添加邮件头,不要改动!
myJmail.AddHeader Mailer,Microsoft Outlook Express 6.00.2800.1437添加邮件头,不要改动!
myJmail.AddHeader MimeOLE,Produced By Microsoft MimeOLE V6.00.2800.1441添加邮件头,不要改动!
myJmail.Charset = mailCharset
myJmail.ContentType = mailContentType

If UCase(mailCharset) = GB2312 Then
myJmail.FromName = ConstFromNameCn
Else
myJmail.FromName = ConstFromNameEn
End If

myJmail.From = ConstFrom
myJmail.Subject = mailTopic
myJmail.Body = mailBody
myJmail.AddRecipient mailTo
myJmail.MailDomain = ConstMailDomain
myJmail.MailServerUserName = ConstMailServerUserName
myJmail.MailServerPassword = ConstMailServerPassword
myJmail.Send ConstMailDomain
myJmail.Close
Set myJmail=nothing

If Err Then
Jmail=Err.Description
Err.Clear
Else
Jmail=OK
End If

On Error Goto 0
End Function


评论


亲,登录后才可以留言!