ASPmail组件使用帮助

作者:网络 来源:佚名 更新时间:2008-02-05 18:18:31 点击:
aspmail组件使用帮助
写在前面,下面的手册中,凡是额外功能部分都有 30天的使用限制,要解除该限制的方法如下:
如果你得到"aspemail's premium features have expired"出错消息后请运行regedit,删除hkey_local_machine\software\persits software\aspemail然后使用regsvr32重新注册aspemail using.然后你又可以接着用30天了

aspemail 4.1 是一个在asp或则vb环境中使用外部smtp服务器发送电子邮件消息的活动服务组件。aspemail 4.1 支持多收件人,多cc, 多bcc,多附件,html格式, 内嵌图形, 和非us ascii字符集设置. aspemail 4.1是一个完全免费的组件,除了内嵌图形功能、quoted-printable编码支持功能、消息队列功能需要另外的购买许可外这份完全免费的aspemail可以www.aspemail.com处下载。


系统需求:

一般配置需求:windows 95/98 或则 windows nt 4.0+一个外部smtp服务程序

特殊配置需求:internet information server 3.0 + 和 active server pages或则personal web server (任何版本) 和 active server pages或则visual basic, visual c++, 其他支持com组件的开发环境


如何开始呢?

首先需要在你的系统上注册aspemail, 在你的ms dos或则start/run中执行下面的命令:

c:\>regsvr32 c:\aspemaildir\aspemail.dll

aspemail是和aspupload(persits software, inc.)组件评估版本一同发布的。该组件是用来将附件文件上载到服务端的.(译者注:当然了,aspmail也可以单独使用的)注册aspupload执行下面的命令:

c:\>regsvr32 c:\aspemaildir\aspupload.dll

aspupload不需要运行aspemail. 然而, 在和aspmail一起发布的asp sendmail例子中在演示aspmail的附件功能时使用到了aspupload。所以如果你需要使用这个例子的话,请也注册aspupload(你可以www.aspupload.com了解更加详细的信息,不过它可不是免费的哦).


如何使用aspemail

在asp环境中使用aspemail的代码如下:



在vb环境中使用aspmail的代码如下,使用前先去project/references...中选中persits software aspemail 4.1.

dim mail as mailsender

set mail = new mailsender


mail.host = "smtp.mycompany.com"

mail.port = 25

mail.from = "[email protected]"

mail.fromname = "sales department" ' 可选的


如果要增加消息的收件人,ccs, bccs, 和reply-to,分别使用addaddress, addcc, addbcc and addreplyto方法.

这些方法都有两个输入参数: email地址和可选的参数name.

mail.addaddress "[email protected]", "john smith"

mail.addcc "[email protected]" ' name是可选的

使用subject和body属性来分别指定消息的主题和消息正文。正文可以是纯文本也可以是html格式的.如果要使用html格式的话,你必须要设置ishtml属性为true.例如

mail.subject = "sales receipt"

mail.body = "dear john:" & chr(13) & chr(10) & "thank you for your business. here is your receipt."

或则

mail.subject = "sales receipt"

mail.body = "dear john:...."

mail.ishtml = true

如果是要发送一个文件附件的话,使用addattachment方法。它使用附件的绝对路径为输入参数.如果你有多个附件的话,就多次调用这个方法即可。注意:不要使用“=”来传递参数

mail.addattachment "c:\dir\receipt.doc"

发送消息是调用send方法. 该方法在出现异常时会出错。你应该选择截获这个出错信息,这个可以使用on error resume next来实现,例如:

on error resume next

mail.send

if err <> 0 then

response.write "an error occurred: " & err.description

end if

支持基于s/mime的加密和数字电子签名

从build 4.0.0.3版本开始, aspemail就可以生成基于工业标准的s/mime格式的密码和数字电子签名.

如果要发送秘密邮件, aspemail必须要和aspencrypt密码组件(也是persits software, inc.出品)联合使用。如果想了解更多的信息,可以去下载免费的aspencrypt试用版www.aspencrypt.com

额外特点(可不是免费的说):支持队列消息

aspemail如果你是使用基本的功能(就是上面介绍的功能)的话,它是完全免费的。但是它的额外的功能就需要你购买一个注册许可(当然你也可以免费使用30天它的额外功能)。可以www.aspemail.com购买这个东东。

aspemail 4.1有一个新方法sendtoqueue, 该方法不是直接将邮件发送给smtp服务器

而是将消息按照先后顺序放入队列中,该队列由emailagent nt服务来发送。这是一个后台运行的进程。你的asp中发送邮件的代码就不用一直要等到邮件发送完毕后才能够结束。这样就意味着你将大大提高代码的效率,缩短客户端等待时间。emailagent服务本身是完全免费的,可以www.aspemail.com/download.html处下载.但是只是sendtoqueue方法需要在你使用了30天后购买一个注册的key。

额外特点: 使用内嵌图形发送消息

aspemail能够发送包含有图形的电子邮件. 例子如下:(该例子发送一个有背景图形的电子邮件)

...

mail.body = "..."

mail.addembeddedimage "c:\aspemaildir\margin.gif", "my-background-image"


addembeddedimage方法有两个输入参数:图形文件的绝对路径和content id (是一个字符串变量)该变量格式如下:

"cid:"

在例子中的该变量content id为"my-background-image"用来引用标志的background属性.你可以使用同样的技术来在标志中使用该功能,例子如下:

mail.body = "......."

mail.addembeddedimage "c:\aspemaildir\logo.gif", "my-company-logo"

为了让你的脚本可读性更好,你可以选择把你的消息文本放到一个独立的文件中,然后把该文件使用appendbodyfromfile方法加入到正文中.例如:














thank you for shopping at our online store!


....





要在你的正文中使用上面这个文件,代码如下:

mail.appendbodyfromfile "c:\aspemaildir\messagebody.html"

mail.addembeddedimage "c:\aspemaildir\margin.gif", "my-background-image"

额外特点: 支持非us-ascii字符集

aspemail能够发送非us-ascii字符集,

||| 只要是可以打印出来的格式即可.

也就是说,该格式在标准rfc-2045中有详细描述.也就是说asc码小于33和大于126的可以被表示为"=" 后加两个16进制的数字.例如, 10进制数值12 (us-ascii中的换页符号)表示为"=0c", 10进制的数值61 (us-ascii中的 "="字符)被表示为"=3d".

aspemail自动对消息正文按照quoted-printable格式进行编码,如故将contenttransferencoding属性

设置为"quoted-printable". 你也可以设置charset属性为适当的字符集

下面的代码片段使用koi8字符集的俄文发送一个文本文件(该文件在此不显示):

...

mail.contenttransferencoding = "quoted-printable"

mail.charset = "koi8-r"

mail.appendbodyfromfile "c:\russiandoc.txt"

mail.send


asp例子程序

跟随aspemail发布的还有一个asp例子程序,该例子允许你通过web建立和发送有附件的邮件。

该例子程序由下面几个文件组成:

global.asa (collection object creation)

sendmail.asp (main email interface page)

attachments.asp (attachment handling page)

uploadscript.asp (upload script which uses aspupload).

要正确使用这个例子的话,请正确注册aspupload组件试用版本

对象帮助

aspemail的属性和属性注释

属性名称 属性类型 注释

host string(必须) smtp服务器的主机名称

port integer smtp的端口号,默认为25.

from string(必须) 发件人的email地址

fromname string 发件人的名称

subject string 消息的主题

body string 消息的正文.可以是文本也可以是html格式.如果是后者,那么属性ishtml必须为true.

ishtml boolean 默认值为false.如果被设置为true, aspemail将设置消息的content-type部分为text/html.

priority integer 消息的优先权.合法值为1 (高), 3 (普通) 和5 (底). 默认为0(即没指定优先级).

helo string 默认值为"aspemail".当smtp对话开始后该字符串随helo命令被发送.用来smtp的客户端标识smtp服务器的域名.