在ASP中发送Email时往往需要一个COM组件支持,如果你没有第三方的Email组件,你可以使用IIS本身提供CDONTS EMail组件。这个组件使用时需要安装和启动SMTP服务。这个组件的名称为CDONTS.DLL,使用前需要使用RegSvr32注册这个组件。
CDONTS组件提供了一系列对象,包括AddressEntry、Attachment、Attachments、Folder、Message、Messages、NewMail、Recipient、Recipients、Session,我们经常使用的是NewMail对象。下面是NewMail对象提供的方法和属性:
名称
功能 格式
Attach 添加附件 Sub AttachFile(Source, [FileName], [EncodingMethod])
AttachURL 以格式添加附加和数据 Sub AttachURL(Source,ContentLocation, [ContentBase], [EncodingMethod])
BCC 以“,”分隔的接收者列表(暗送) 字符串类型属性
Body TextHTML
字符串类型属性
bodyformat 邮件正文格式 0:HTMl1:Text
CC 以“,”分隔的接收者列表(抄送) 字符串类型属性
ContentBase 带有附件的邮件中正文采用的基地址 字符串类型属性
ContentLocation 带有附件的邮件中正文采用的 字符串类型属性
From 邮件发送方地址 字符串类型属性
Importance 邮件级别 0: 1 2:
Send 发送邮件 Sub Send([From], [To], [Subject], [Body], [Importance]) 各个参数可以参考上下文属性
SetLocaleIDs 设置新消息的代码页标识 Sub SetLocaleIDs(CodePageID As Long)
Subject 邮件主题 字符串类型属性
To 以“,”分隔的接收者地址列表 字符串类型属性
Value 任意的邮件头的值 字符串类型属性
Version 当前集合数据对象库()的版本号 只读字符串类型属性
在使用有关对象的方法时,方括号参数可以省略。
下面是采用ASP使用的例子:
Dim MailObject
Set MailObject = Server.CreateObject("CDONTS.NewMail")
MailObject.Send "发送方邮件地址","接收方邮件地址","主题","邮件正文"
发送附件时可以这样:
Dim MailObject
Set MailObject = Server.CreateObject("CDONTS.NewMail")
att_fileName="附件文件名完整路径"
f_name="文件名"
MailObject.From="在这填写发件人地址"
MailObject.To="在这填写接收人地址"
MailObject.Subject="填写主题"
MailObject.Body="填写正文"
MailObject.AttachFile att_file,f_name
MailObject.Send
注意:发送邮件时需要IUSR_<机器名>用户对x:\Inetpub\mailroot目录有读写权限。