ASP与jmail发送邮件:一次实用的回顾

本文介绍如何利用JMail组件在ASP中实现邮件发送功能,包括设置邮件格式、收发件人信息及发送过程。

        在早期的ASP开发中,发送邮件是一个常见需求。今天回过头来整理一下当年使用jmail组件发送邮件的经验,希望能给还在维护老项目的朋友一点帮助。

1. 组件安装(当时折腾了一下)

首先需要下载jmail.dll文件(网上搜索就能找到),然后把它复制到服务器系统的C:/WINNT/system32目录下。接着用命令行注册:

regsvr32 jmail.dll

记得要以管理员权限运行命令行,否则会注册失败。这一步当年经常因为权限问题折腾半天。

2. ASP调用代码(核心步骤)

注册成功后,就可以在ASP文件中编写发送邮件的代码了。下面是一个典型的示例,注释里保留了我当时用的繁体习惯,大家可以根据需要调整。

<%
' 创建jmail邮件对象
set jmail = server.CreateObject("JMAIL.Message")

' 屏蔽错误,返回True/False,便于调试
jmail.silent = true

' 开启日志,方便查看发送状态
jmail.logging = true

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

' 设置字符编码(简体中文环境建议用GB2312或UTF-8)
jmail.Charset = "BIG5"   ' 原文用BIG5(繁体),可改为"GB2312"

' 添加收件人
jmail.AddRecipient "shege-java@163.com"
' 抄送
jmail.AddRecipientCC "shege-java@163.com"
' 密送
jmail.AddRecipientBCC "shege-java@163.com"

' 发件人地址和名称
jmail.from = "slyn_2004@163.com"
jmail.fromname = "slyn_2004(博客)"

' 邮件主题
jmail.Subject = "TO: CSDN各位博客好友"

' 拼接邮件正文(HTML格式)
jmail.AppendHTML("  您们好:<br><br>")
jmail.AppendHTML("  这是一封由slyn_2004(博客)发出的信件<br>")
jmail.AppendHTML("  请您们有时间来博客逛逛!<br>")
jmail.AppendHTML("  谢谢!<br>")
jmail.AppendHTML("  slyn_2004(博客)<br>")

' 发送邮件(mailhost替换为你的SMTP服务器地址)
jmail.Send(mailhost)

' 关闭对象,释放资源
jmail.Close
%>

3. 几个容易踩的坑(回顾总结)

  • 编码问题:如果收件人看到乱码,多半是Charset设置不对。国内环境用GB2312UTF-8比较稳妥。
  • SMTP服务器jmail.Send(mailhost)中的mailhost需要填写真实的SMTP地址(比如smtp.163.com),并且很多邮箱要求身份验证,jmail可能需要额外设置jmail.MailServerUserNamejmail.MailServerPassword
  • 组件注册:如果服务器是64位系统,regsvr32要用64位版的命令行,或者把dll放到SysWOW64下并相应注册。
  • 防垃圾邮件:发件人地址最好与SMTP服务器认证的用户名一致,否则容易被拒。

4. 写在最后

当年jmail是ASP发邮件的利器,虽然现在.NET、Python等更现代的技术已普及,但老系统维护时仍会遇到。希望这篇回顾能帮你快速回忆起用法,少走一些弯路。如果有遗漏,欢迎留言补充。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值