在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

以URL格式添加附加和数据

Sub AttachURL(Source,ContentLocation,

[ContentBase], [EncodingMethod])

BCC

以“,”分隔的BCC接收者列表(暗送)

字符串类型属性

Body

Text或者HTML格式的邮件正文

字符串类型属性

body format

邮件正文格式

0:表示HTMl格式,1:表示Text格式

CC

以“,”分隔的CC接收者列表(抄送)

字符串类型属性

ContentBase

带有URL附件的邮件中正文采用的URL基地址

字符串类型属性

ContentLocation

带有URL附件的邮件中正文采用的URL

字符串类型属性

From

邮件发送方地址

字符串类型属性

Importance

邮件级别

0: 普通 1:机密 2:绝密

Send

发送邮件

Sub Send([From], [To], [Subject], [Body], [Importance])

各个参数可以参考上下文属性

SetLocaleIDs

设置新消息的代码页标识

Sub SetLocaleIDs(CodePageID As Long)

Subject

邮件主题

字符串类型属性

To

以“,”分隔的接收者地址列表

字符串类型属性

Value

任意的邮件头的值

字符串类型属性

Version

当前集合数据对象库(CDO)的版本号

只读字符串类型属性

在使用有关对象的方法时,方括号参数可以省略。

下面是采用ASP使用的例子:

 Dim MailObject

Set MailObject = Server.CreateObject("CDONTS.NewMail")

MailObject.Send "发送方邮件地址","接收方邮件地址","主题","邮件正文"

发送附件时可以这样:

Dim MailObject

Set MailObject = Server.CreateObject("CDONTS.NewMail")

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

如果你需要了解CDONTS其它对象的信息,你可以在Visual Basic工程中添加CDONTS组件的引用,然后使用对象浏览器察看CDONTS类型库。添加CDONTS引用时可以浏览到Windows安装目录的系统目录

例子

SendMail "", "", "HTML Mail!", m_strHTML, 2, 1, Null
Sub SendMail(strFrom, strTo, strSubject, strBody, lngImportance, lngAType, strAttach)
 '参数说明
 'strFrom : 发件人Email
 'strTo : 收件人Email
 'strSubject : 信件主题
 'strBody : 信件正文
 'lngImportance : 信件重要性
 ' 0: 普通 1:机密 2:绝密
 'lngAType : 信件格式
 ' : 为1时将邮件正文作为HTML(此时可以发送HTML邮件)
 'strAttach : 附件的路径
 on error resume next
 Dim objMail
 Set objMail = Server.CreateObject("CDONTS.NEWMAIL")
 if err then
  SendMail= "没有安装CDONTS组件"
  err.clear
  exit function
 end if
 With objMail
  .From = strFrom
  .To = strTo
  .Subject = strSubject
  .Body = strBody
  .Importance = lngImportance
  If lngAType = 1 Then
   .BodyFormat = 0
   .MailFormat = 0
  End If
  If IsEmpty(strAttach) = False And IsNull(strAttach) = False Then
   .AttachFile strAttach
  End If
  .Send
 End With
 Set objMail = Nothing
 if err then
  cSendMail=err.description
  err.clear
 else
  cSendMail="OK"
 end if
End Sub

CDONTS组件的更多相关文章

  1. asp发邮件控件

    <% Set jmail = Server.CreateObject("JMAIL.SMTPMail") ’创建一个JMAIL对象 jmail.silent = true ’ ...

  2. 在Asp.Net中使用SmtpMail发送邮件的方法

    在ASP中,就可以通过调用CDONTS组件发送简单邮件,在ASP.Net中,自然也可以.不同的是,.Net Framework中,将这一组件封装到了System.Web.Mail命名空间中. 一个典型 ...

  3. ASP精华[转]

    <% '#######以下是一个类文件,下面的注解是调用类的方法################################################ '# 注意:如果系统不支持建立S ...

  4. ASP CDONTS.NEWMAIL组件发送电邮(附下载)

    附CDONT.NEWMAIL组件下载地址:http://files.cnblogs.com/files/colinliu/cdonts.rar ASP常规发送方法: <% dim mail se ...

  5. IIS安装asp组件:JMail 邮件收发组件

    JMail简介 jmail是一种服务器端的邮件发送组件,和个人用的客户端邮件软件不一样的.jmail是在服务器上给程序用来发邮件用的,除了软件编程人员,其他人一般平常用不上. jmail是一个第三方邮 ...

  6. ExtJS 4.2 评分组件

    上一文章是扩展ExtJS自带的Date组件.在这里将创建一个评分组件. 目录 1. 介绍 2. 示例 3. 资源下载 1. 介绍 代码参考的是 Sencha Touch 2上的一个RatingStar ...

  7. react组件的生命周期

    写在前面: 阅读了多遍文章之后,自己总结了一个.一遍加强记忆,和日后回顾. 一.实例化(初始化) var Button = React.createClass({ getInitialState: f ...

  8. react-router 组件式配置与对象式配置小区别

    1. react-router 对象式配置 和 组件式配置    组件式配置(Redirect) ----对应---- 对象式配置(onEnter钩子) IndexRedirect -----对应-- ...

  9. Angular2入门系列教程3-多个组件,主从关系

    上一篇 Angular2项目初体验-编写自己的第一个组件 好了,前面简单介绍了Angular2的基本开发,并且写了一个非常简单的组件,这篇文章我们将要学会编写多个组件并且有主从关系 现在,假设我们要做 ...

随机推荐

  1. Sass与Compress实战:第一章

    1.消除冗余代码的方式: ▶通过变量来复用属性值 例如,一段冗余的CSS代码: h1#brand { color : #1875e7 } #sidebar { background-color : # ...

  2. 浙大 pat 1007题解

    Given a sequence of K integers { N1, N2, ..., NK }. A continuous subsequence is defined to be { Ni, ...

  3. 使用Angular构建单页面应用(SPA)

    什么是SPA?看下图就是SPA: 下面说正经的,个人理解SPA就是整个应用只有一个页面,所有的交互都在一个页面完成,不需要在页面之间跳转. 单页面的好处是更快的响应速度,更流畅的用户体验,甚至和桌面应 ...

  4. 自己写deque

    //deque /* what is a deque? In Chinese, it's called "双端队列". It's different from a queue. I ...

  5. struts入门学习(二)

    一  struts的各种视图的转发与重定向 1 struts跳转到指定的JSP页面,只需要修改配置文件 <package name="user" namespace=&quo ...

  6. Logistic Regression:银行贷款申请审批实例

    问题定义 这是一个贷款的审批问题,假设你是一个银行的贷款审批员,现在有客户需要一定额度的贷款,他们填写了个人的信息(信息在datas.txt中给出),你需要根据他们的信息,建立一个分类模型,判断是否可 ...

  7. GitHub赠送DigitalOcean优惠码100美元

    著名的项目托管网站GitHub本周联合DigitalOcean VPS和NameCheap送给学生福利了!十余种产品免费拿!包括免费赠送digitalocean优惠码价值100美元!以及nameche ...

  8. WTL 设置 SDI 主窗口初始大小的方法

    在窗口创建之前添加一段代码 一般窗口创建函数为 wndMain.CreateEx(); 在此函数前添加 1: RECT rect = {x, y, width, height}; 然后将创建窗口函数改 ...

  9. Excel补全日期(日期按顺序补全)

    1.给出的数据 2.想补全缺失的日期,比如2015/3/1,2015/3/2,... 1)在D列输入完整的日期,如下图所示: 2)在E2处写函数“=IF(ISERR(VLOOKUP(D2,B:C,2, ...

  10. JPA 系列教程11-复合主键-2个@Id

    复合主键 指多个主键联合形成一个主键组合 需求产生 比如航线一般是由出发地及目的地确定,如果要确定唯一的航线就可以用出发地和目的地一起来表示 ddl语句 CREATE TABLE `t_airline ...