17
2008
01

CDONTS.NewMail

自动发E-Mail 组件CDONTS.NewMail 描述

2007-01-09 20:58

ASP本身没有发送邮件的能力,但是如果你希望用ASP来发送E-MAIL,那么你需要安装一个ASP组件。并借助这些组件来帮你实现邮件的自动发送、回复等工作。

此在XP系统下:

(1)先把文件cdonts.dll拷到C盘windows的system32目录下.  (安装组件CDONTS.DLL)
(2)在运行那里运行命令 regsvr32 Cdonts.dll         (对组件CDONTS.DLL进行注册)

       御载指令为: regsvr32/u cdonts.dll 

cdonts.dll 下载地址:http://www.dll321.com/soft/3/2006/20061211094.html



组件的使用:可以用下面简单的脚本。 

<%
 dim objCDOMail
        Set objCDOMail = Server.CreateObject("CDONTS.NewMail")
        objCDOMail.From ="[email protected]"
        objCDOMail.To =[email protected]
        objCDOMail.Subject = "欢迎光临!"
        objCDOMail.Body = "欢迎下次再来!"
        objCDOMail.Send
        set objCDOMail = Nothing
 
%>

  
CDONTS.DLL也可以用来发送附件,代码如下:

< % 
Dim MailObject 
Dim Email Email = Request("Email") 
Set MailObject = Server.CreateObject("CDONTS.NewMail") 
att_file="D:\zwf\XXX\XXX.txt" 
f_name="email.txt" 

MailObject.From="你本人的E-MAIL" 
MailObject.To = Email 
MailObject.Subject="感谢您对我们工作的支持" 
MailObject.Body="感谢您对我们工作的支持" 
MailObject.AttachFile att_file,f_name 
MailObject.Send 
%> 


注意:att_file="D:\zwf\XXX\XXX.txt" 必须是我们放附件的绝对路径。

注释 

NewMail 对象不是建立在普通的 API 体系结构上。它被 Microsoft? Windows NT? Server 中运行的自动进程用于快速产生通告邮件。它不提供任何用户接口,在邮件的产生和发送过程中也不提供任何的交互。因此 NewMail 对象的属性没有被设计成为可以回读和检查。仅除 Version 外,其他属性只能被写入。

NewMail 对象是完备的并且不暴露任何 公共于所有的 CDO for NTS 库对象的属性。

一旦将附件和收件人添加到 NewMail 对象,就不能清除它们了,并且 NewMail 对象本身也不能被删除。当 Send 方法成功完成任务时,NewMail 对象将失效但并不从内存中清除。程序员应该将失效对象设置为 Nothing 以便将其从内存中清除或给它重新分配另一个 NewMail 对象。企图访问已发送的 NewMail 对象将导致返回 CdoE_INVALID_OBJECT。

NewMail 对象不在包含 CDO for NTS Library 对象的层次结构中。它不能访问其他任何对象,也不能从其他对象中访问。与 Session 对象一样,它被认为是最上层的对象并且直接由 Microsoft? Visual Basic? 程序创建。其 ProgID 是 CDONTS.NewMail。

NewMail 对象的主要优点在于它产生和传送邮件的简单性和易用性。用户不必登录到一个会话,也不必与文件夹和邮件集合打交道。只需创建 NewMail 对象,将其发送出去,然后将其设置为 Nothing 即可。用户可以在 Send 方法的参数中提供关键信息。

以上摘自:http://hi.baidu.com/4racn/blog/item/8e81828fbdf498fa513d92ff.html

用CDONTS.NewMail发邮件

<%
'Last Updated By Recon On 05/14/2001
'On Error Resume Next

'利用CDONTS组件在Win2k上发送邮件
Dim objMail

'普通邮件
'无主体
Set objMail = Server.CreateObject("CDONTS.NEWMAIL")
objMail.From        = "[email protected]"
objMail.To            = "[email protected]"
objMail.Subject    = "TEST1"
objMail.Send
Set objMail = Nothing

'普通邮件
'有主体
Set objMail = Server.CreateObject("CDONTS.NEWMAIL")
objMail.From        = "[email protected]"
objMail.To            = "[email protected]"
objMail.Subject    = "TEST2"
objMail.Body        = "When i was young, i listened to the radio ..."
objMail.Send
Set objMail = Nothing

'普通邮件
'有多送.有主体
Set objMail = Server.CreateObject("CDONTS.NEWMAIL")
objMail.From        = "[email protected]"
objMail.To            = "[email protected];[email protected]"
objMail.Subject    = "TEST3"
objMail.Body        = "When i was young, i listened to the radio ..."
objMail.Send
Set objMail = Nothing

'普通邮件
'有抄送.有主体.有重要性
Set objMail = Server.CreateObject("CDONTS.NEWMAIL")
objMail.From        = "[email protected]"
objMail.To            = "[email protected]"
objMail.Cc            = "[email protected];[email protected]"
objMail.Subject    = "TEST4"
objMail.Body        = "When i was young, i listened to the radio ..."
objMail.Importance = 2
objMail.Send
Set objMail = Nothing

'普通邮件
'有抄送.有暗送.有主体.有重要性
Set objMail = Server.CreateObject("CDONTS.NEWMAIL")
objMail.From        = "[email protected]"
objMail.To            = "[email protected]"
objMail.Cc            = "[email protected]"
objMail.Bcc             = "[email protected];[email protected]"
objMail.Subject    = "TEST5"
objMail.Body        = "When i was young, i listened to the radio ..."
objMail.Importance = 2
objMail.Send
Set objMail = Nothing

'普通邮件
'有主体.有重要性.含附件
Set objMail = Server.CreateObject("CDONTS.NEWMAIL")
objMail.From        = "[email protected]"
objMail.To            = "[email protected]"
objMail.Subject    = "TEST6"
objMail.Body        = "When i was young, i listened to the radio ..."
objMail.Importance = 2

objMail.AttachFile "C:\Love.txt"
objMail.Send
Set objMail = Nothing

'HTML邮件
'有主体.有重要性
'注: AttachURL的使用可能有错误
Dim fso, tf
Dim strHTML

Set fso    = Server.CreateObject("SCRIPTING.FILESYSTEMOBJECT")
Set tf    = fso.OpenTextFile("C:\Mail.htm", 1)
strHTML = tf.ReadAll

Write strHTML
Set tf    = Nothing
Set fso    = Nothing

Set objMail = Server.CreateObject("CDONTS.NEWMAIL")
objMail.From        = "[email protected]"
objMail.To            = "[email protected]"
objMail.Subject    = "TEST7"
objMail.Body        = strHTML

objMail.BodyFormat    = 0
objMail.MailFormat    = 0
objMail.Importance    = 2

objMail.AttachURL "c:\common.css", "common.css"
objMail.AttachURL "c:\logo.gif", "logo.gif"
objMail.Send
Set objMail = Nothing
%>

////////////////
一个过程。另外CDONTS在IIS5下才可以使用的,你还必须配置你的SMTP服务,在INTERNET管理器里面有。
<%
sub sendmail(fromwho,towho,subject,body)
dim cdo
set cdo=server.createobject("cdonts.newmail")
cdo.From=fromwho
cdo.To = towho
cdo.Subject =subject
cdo.Body =body
cdo.MailFormat=0
'说明是以MIME发送
cdo.BodyFormat=0
'可以包含html代码
cdo.Importance=0
'邮件的优先级别0-1-2
'[email protected] 抄送
'[email protected]密送
'cdo.AttachFile "" 附件
cdo.Send
Set cdo=Nothing
end sub
sub sendattachmail(fromwho,towho,subject,body,attachfile)
dim cdo
set cdo=server.createobject("cdonts.newmail")
cdo.From=fromwho
cdo.To = towho
cdo.Subject =subject
cdo.Body =body
cdo.MailFormat=0
cdo.BodyFormat=0
cdo.Importance=0
cdo.AttachFile attachfile
cdo.Send
Set cdo=Nothing
end sub
%>
发送带附件的HTML格式邮件例程


  如何通过 ASP 来发送带附件、格式为 HTML 的邮件?下面提供了一个例程.

<%@ LANGUAGE=VBScript%>
<%
Response.Buffer = True
Response.Expires = 0

'创建对象实例
Set myMail = Server.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=7>"
HTML = HTML & "This is a test mail in html<br>"
HTML = HTML & "Mail content here ...</font></p>"
HTML = HTML & "</body>"
HTML = HTML & "</html>"

'发件人
myMail.From = "[email protected]"

'收件人
myMail.To = "[email protected]"

'密件抄送
myMail.Bcc = "[email protected]"

'抄送
myMail.Cc = "[email protected]"

'邮件的重要性
' 0 重要性低 
' 1 重要性一般(默认)
' 2 重要性高 
myMail.Importance = 2

'邮件主题
myMail.Subject = "Test mail in HTML"

'附件(注意 e:\test.txt 指的是服务器上的位置,如果使用相对路径,必须用 Server.MapPath 映射为真实路径)
myMail.AttachFile "e:\test.txt"

'NewMail 对象的文字格式
'0 表示该 Body 可包含超文本置标语言 (HTML)
'1 表示该 Body 只用于纯文本(默认值)
myMail.BodyFormat = 0

'NewMail 对象设置编码
'0 表示将采用 MIME 格式
'1 表示将采用连续的纯文本(默认值)
myMail.MailFormat = 0

'给邮件对象的文本赋值
myMail.Body = HTML

'将邮件发出
myMail.Send

'销毁对象实例,释放内存
Set myMail = Nothing
%>


用Cdonts实现发送Email 

--------------------------------------------------------------------


<%
  dim cdo
  set cdo=server.createobject("cdonts.newmail")
  cdo.From=fromwho   "发件人信箱
  cdo.To = towho     "收件人信箱
  cdo.Subject =subject    "主题
  cdo.Body =body      "邮件正文
  cdo.MailFormat=0  "说明是以MIME发送
  cdo.BodyFormat=0  "可以包含html代码
  cdo.Importance=0  "邮件的优先级别0-1-2
  [email protected]   "抄送
  [email protected]  "密送
  cdo.AttachFile attachfile    "附件
  cdo.Send
  Set cdo=Nothing
%>
下面我们看一个实例:
dim str 
str=str&"您好!"
str=str&"  由中国学生网所提供的劣质服务(ASP服务器瘫痪),导致本站连继两天不能访问。"
str=str&"站长向这段时间不能访问本站的朋友深表歉意!本工作室也正在考虑更换网络提供商!<br>"
str=str&"  本站永久域名:www.chinabs.net  主要面向B/S技术爱好者。<br>"
str=str&"  建站的目的是为B/S爱好者提供一个学习交流的平台,同时也为商家建立企业上网平" str=str&"台,企业内部B/S应用提供解决方案。<br>"
str=str&"  主要内容包括:ASP,ASP.NET,JSP,PHP,C#,Java,JavaScript,XML学习文章,B/S技术" str=str&"交流论坛及一些本工作室开发的一些B/S应用。<br>"
str=str&"  本站的发展离不开大家的支持!<br>"
str=str&"  谢谢!<br>"
str=str&" 站长:追风<br>"
str=str&" 深圳比艾思工作室<br>"
filename="test.gif"           "附件文件名
path=Server.MapPath("\jefenet\images\" & filename)     "附件的路径
Set theMail=Server.CreateObject("CDONTS.NewMail")
theMail.From="[email protected]"   "发件人信箱
theMail.To ="[email protected]"   "收件人信箱
theMail.Subject ="电子邮件功能测试!"   "主题
theMail.BodyFormat=0   "定义以Html的格式发送邮件
theMail.MailFormat=0    "定义以Mime的格式发邮件
theMail.Body=Str      "邮件正文
On Error Resume Next       "如果找不到附件,则跳过
theMail.AttachFile path,filename
theMail.Send
set theMail=nothing

以上摘自:http://blog.sina.com.cn/s/blog_4a961f2a01000cc4.html

« 上一篇: Oracle远程复制和异地容灾... 下一篇: 大战HP6520S XP系统之... »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。