当前位置: 首页 > 图文教程 > 网络编程 > ASP > ASP实例:实现邮件发送普通附件和嵌入附件

ASP
用asp执行DTC
利用ADODB.Stream使用浏览器下载服务器文件
应用数据库的唯一性约束并在asp中捕捉数据库的错误
用ASP编程控制在IIS建立Web站点
asp实现k线图(在线)
在ASP中用EasyMailObject组件处理Exchange邮件源代码(7)
在ASP中用EasyMailObject组件处理Exchange邮件源代码(6)
在ASP中用EasyMailObject组件处理Exchange邮件源代码(5)
在ASP中用EasyMailObject组件处理Exchange邮件源代码(4)
在ASP中用EasyMailObject组件处理Exchange邮件源代码(3)
在ASP中用EasyMailObject组件处理Exchange邮件源代码(2)
在ASP中用EasyMailObject组件处理Exchange邮件源代码(1)
用文本+ASP打造新闻发布系统。几点补充
用文本+ASP打造新闻发布系统(五)新闻修改
用文本+ASP打造新闻发布系统(四)新闻删除
用文本+ASP打造新闻发布系统(三)新闻列表显示
用文本+ASP打造新闻发布系统(二)新闻添加
ASP作的剪包锤游戏
ASP注册表项目修改
构建稳定的服务器端组件的七个步骤

ASP实例:实现邮件发送普通附件和嵌入附件


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 236 ::
收藏到网摘: n/a

网上很多关于JMail发送邮件的例子都没有写如何发附件,或者没有写清如何发内嵌的附件(比如把附件图片嵌入到HTML信件里面)

其实最关键的就是这句要注释掉

'JMail.ContentType = "text/html"

(为什么要发内嵌的附件图片?因为如果是img src=网上的地址,在outlook等客户端内则显示是难看的“X”,需要手动下载图片)

本例子参考了Dimac(w3JMail官方)的样例,文件地址:

C:\Program Files\Dimac\w3JMail4\Examples\ASP\htmlimage.asp

(安装了Jmail的都有)

例子代码:

以下为引用的内容:

<%
Set JMail = Server.CreateObject("JMail.Message")
'是否将信头编码成iso-8859-1字符集. 缺省是True
JMail.ISOEncodeHeaders = True
'如果JMail.silent设置为true,ErrorCode包含的是错误代码
JMail.Silent = True
'设置标题和内容编码,如果标题有中文,必须设定编码为gb2312
JMail.Charset = "gb2312"
'JMail.ContentType = "text/html" '如果发内嵌附件一定要注释掉这行,重要!
JMail.From = "[email protected]" ' 发送者地址
JMail.FromName = "Skyhe System" ' 发送者姓名
JMail.MailServerUserName = "web" ' 身份验证的用户名
JMail.MailServerPassword = "123456" ' 身份验证的密码
'加入新的收件人
JMail.AddRecipient "[email protected]", "Mr.Example"
'JMail.AddRecipientBCC Email '密件收件人的地址
'JMail.AddRecipientCC Email '邮件抄送者的地址
JMail.Subject = "图片测试!!!"
JMail.Body = "A nice picture if you can read HTML-mail."

'增加一个普通附件
JMail.AddAttachment(Server.MapPath("images/email.gif"))
'增加一个嵌入式附件
' The return value of AddAttachment is used as a
' reference to the image in the HTMLBody.
'contentId = JMail.AddAttachment(Server.MapPath("images/email.gif"))
Dim contentId
contentId = JMail.AddAttachment("E:\images\email.gif")

'只有HTML格式支持嵌入图片附件,我们采用HTML格式的邮件内容
' As only HTML formatted emails can contain inline images
' we use HTMLBody and appendHTML
JMail.HTMLBody = "<html><body><font color=""red"">Hi, here is a nice picture:</font><br>"
JMail.appendHTML "<img src=""cid:" & contentId & """>"
JMail.appendHTML "<br><br> good one huh?</body></html>"

'如果对方信箱不支持HTML格式邮件,我们仍需要给他一个友善的提示
' But as not all mailreaders are capable of showing HTML emails
' we will also add a standard text body
JMail.Body = "Too bad you can't read HTML-mail."
JMail.appendText " There would have been a nice picture for you"

JMail.Send( "mail.skyhe.com" )
JMail.Close()
Set JMail = Nothing
%>