首页公司简介公司动态解决方案客户留言网上订单人才招聘联系我们
公司动态  

CDONTS组件是做什么用的?

发布时间:2013-7-27

CDONTS组件
在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 目录有读写权限。 

 

CDONTS组件:你不必专门下载,微软已经提供了这个组件,只要安装了NT的SMTP就会有的。
下面我们利用这个组件来做一个客户调查反馈表单(Webmail)。表单主要代码如下:
<form action="post.asp" method="post" name="mywebmail"> 您的姓名: 
<input type="text" name="name" size="20" maxlength="50"> 电子邮件: 
<input type="text" name="email" size="20" maxlength="60"> 邮件主题: 
<input type="text" name="mailsubject" size="30" maxlength="100"> 您的意见和建议:<br> <textarea rows="4" name="text" cols="40"></textarea> <input type="submit" value="确认递交" name="submit"> <input type="reset" value="清除重写" name="clear"> </form> 
post.asp
<html> <head> <title>发送表单</title> <body> 
<html> <head> <title>发送表单</title> <body> 
<%
'以下是信件体,大家在我的留言版的所有信件就是这样发给我的。
strBody = "===========留言版留言===========" & vbCrLf
strBody = strBody & "发信时间:" & Now() & vbCrLf
strBody = strBody & "留言人:" & Name & vbCrLf
strBody = strBody & "电子邮件:" & Email & vbCrLf
strBody = strBody & "留言内容:" & Text & vbCrLf
strBody = strBody & "============ END ============="
Set myMail = Server.CreateObject("CDONTS.NewMail")
myMail.From = Email
myMail.To = "yourmailbox@mailhost.com"
myMail.Subject = Mailsubject
myMail.Body = StrBody
myMail.Send
Set myMail=Nothing
'当 Send 方法成功完成任务时,NewMail 对象将失效但并不从内存中清除。你应该将失效对象设置为 Nothing 以便将其从内存中清除或给它重新分配另一个NewMail 对象。 
%> 
<center> 
邮件已顺利发出,感谢您的意见和建议!
</center> </body> </html> 
此外,CDONTS还支持如下的方法:
<%
Set Mymail = CreateObject("CDONTS.NewMail")
Mymail.From = *** '信件发送者信箱
Mymail.To = *** ‘信件接收者信箱
Mymail.CC = *** '抄送
Mymail.BCC = *** ’密件发送
Mymail.Subject = *** ‘信件主题
Mymail.Body = *** ’信件正文
'设置优先级,0-不重要,1-一般,2-重要。
Mymail.Importance = 2
Mymail.Send
Set Mymail = Nothing
%> 
注释:***字符串可能是你写进去的,也可能是取自表单,使用Request方法啊。总之根据您的用意去用它。
检查你是否安装了SMTP服务。OPTION PACK缺省安装时是包括SMTP服务的。SMTP 服务安装后,在你的system32目录下会有一个文件叫CDONTS.DLL。    
如果你不知道自己所在的站点是否支持,只要下载本站的Webmail程序,上传到你所在的站点测试一下,如果没有报错,看定是支持的。如果出现“Can't Create Objection”的错误,那么我想,凡是开放ASP权限的站点肯定是支持的,如果不支持,说明管理员简直太懒惰了。
如何使用CDONTS组件发基于HTML的信件?
<%
Set MyMail2 = CreateObject("CDONTS.NewMail")
HTML = "<html>"
HTML = HTML & "<head>" 
HTML = HTML & "<title>Sending CDONTS Email Using HTML</title>"
HTML = HTML & "</head>"
HTML = HTML & "<body bgcolor=""FFFFFF"">"
HTML = HTML & "<p><font size=3>"
HTML = HTML & "This is a test mail in html<br>"
HTML = HTML & "Mail content here ...</font></p>"
HTML = HTML & "</body>"
HTML = HTML & "</html>"
MyMail2.From= "somebody@somewhere.com"
MyMail2.To="nobody@somewhere.com"
MyMail2.Subject="Test mail in HTML"
MyMail2.BodyFormat=0 
MyMail2.MailFormat=0
MyMail2.Body = HTML
MyMail2.Send
set MyMail2=nothing
%> 
总之,用标准的HTML写就是了。
如何使用CDONTS组件发含附件的信件?
<%
Set MyMail3 = CreateObject("CDONTS.NewMail")
MyMail3.From= "somebody@nowhere.com"
MyMail3.To= "nobody@nowhere.com"
MyMail3.Cc="nobody2@nowhere.com"
MyMail3.Subject="This is a Test"
MyCDONTSMail3.AttachFile Server.MapPath("C:\inetpub\wwwroot\somedirectory\anyfile.txt")
MyBody2 = "Thank you!" & vbCrLf
MyBody2 = MyBody2 & "Your information will be send to me!" & vbCrLf
MyBody2 = MyBody2 & "Welcome in http://java2000.126.com !"
MyMail3.Body= MyBody2
MyMail3.Send
set MyMail3=nothing
%>

昆山模具生产管理软件中没有此组件。摩杰斯模具生产管理软件是专业的模具生产管理软件。

 

 




【返回】

首页 » 公司动态 »
»
»
WAPMobile