W3 Jmail使用详细教程.docx

上传人:b****8 文档编号:23883966 上传时间:2023-05-21 格式:DOCX 页数:17 大小:20.48KB
下载 相关 举报
W3 Jmail使用详细教程.docx_第1页
第1页 / 共17页
W3 Jmail使用详细教程.docx_第2页
第2页 / 共17页
W3 Jmail使用详细教程.docx_第3页
第3页 / 共17页
W3 Jmail使用详细教程.docx_第4页
第4页 / 共17页
W3 Jmail使用详细教程.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

W3 Jmail使用详细教程.docx

《W3 Jmail使用详细教程.docx》由会员分享,可在线阅读,更多相关《W3 Jmail使用详细教程.docx(17页珍藏版)》请在冰豆网上搜索。

W3 Jmail使用详细教程.docx

W3Jmail使用详细教程

W3Jmail使用详细教程+简单实例

使用W3JMail实现邮件发送的解决方案

[作者:

佚名    文章来源:

赛酷建站    点击数:

130    更新时间:

2006-8-20]

W3JMail邮件组件是Dimac公司开发的用来完成邮件的发送、接收、加密和集群传输等工作的。

w3Jmail组件是国际最为流行的邮件组件之一,当今世界上绝大部分ASP程序员都在使用w3Jmail组件构建邮件发送系统,那是因为w3Jmail组件使用了新的内核技术,使其更加可靠和稳定。

一、下面向读者介绍w3Jmail4.3组件的新特性:

1、w3Jmail4.3组件重新设计了其内部结构——使用Message对象代替原来的单一对象Jmail.smtpmail发送邮件;

2、w3Jmail4.3组件一共有十多个对象(后面将详细介绍)——这些对象中,绝大多数是针对Jmail.Message对象操作的;

3、支持从POP3邮件服务器收取邮件;

4、支持加密邮件的传输;

5、快速发送,一次会话就完成邮件发送;

6、还有一个特性就是可以使用w3Jmail4.3组件的集群发送功能一次发送成千上万个邮件,还可以通过邮件合并(mailmerge)对象来个性化邮件。

二、Jmail邮件组件的安装及卸载:

1、安装

跟使用别个组件一样,在使用Jmail邮件组件之前要先安装或注册该组件Jmail.dll。

具体注册方法,是先把Jmail.dll文件拷贝到硬盘的某一目录下(如C:

\Jmail\Jmail.dll),然后执行命令Regsvr32C:

\Jmail\Jmail.dll即可。

2、卸载

卸载组件是安装组件的相反动作,可以使用参数/U来卸载已安装的组件,执行命令Regsvr32/UJmail.dll即可。

三、详细介绍W3Jmail组件的对象(12个):

1、.POP3对象

属性(或方法)

说明

Connect(Username,Password,Server,Port)

连接POP3服务器,断口可选,默认110。

DeleteMessages()

从邮件服务器上删除所有邮件。

DeleteSingleMessage(MessageID)

从邮件服务器上删除由MessageID指定的邮件。

Disconnect()

关闭跟邮件服务器的连接。

DownloadHeaders()

从邮件服务器上读取所有的邮件头并传递给Messages集合。

DownloadMessages()

从邮件服务器读取所有邮件。

DownloadSingleHeader(MessageID)

从邮件服务器读取指定的邮件头并传递给Messages集合。

DownloadUnreadMessages()

从邮件服务器上读取所有未读邮件。

2、.Messages对象

属性(或方法)

说明

Clear()

清除集合中的所有内容,并不会删除邮件服务器上的任何邮件。

Count():

Integer

返回集合中记录的数目:

I=Messages.Count

Item(Index):

Pointer

返回一个Message对象。

SetoMsg=Messages.Item(0)

3、.Message对象

属性(或方法)

说明

AddAttachment(FileName,isInline,ContentType):

String

给邮件添加一个文件型的附件。

isInline设置为True时,添加的这个附件就是一个可嵌入的附件。

AddCustomAttachment(FileName,Data,isInline):

String

给邮件添加一个自定义类型的附件。

AddHeader(Xheader,Value)

给邮件添加一个自定义邮件头X-Header。

AddNativeHeader(Header,Value)

给邮件添加一个邮件头。

AddRecipient(emailAddress,recipientName,PGPKey)

给邮件添加一个收件人。

RecipientName和PGPKey是可选项,RecipientName为收件人姓名,PGPKey给邮件加密。

AddRecipientBCC(emailAddress,PGPKey)

添加一个邮件暗送人(BCC)地址。

AddRecipientCC(emailAddress,recipientName,PGPKey)

给邮件添加一个邮件抄送人(CC)地址。

AddURLAttachment(bstrURL,bstrAttachAs,isInline,bstrAuth):

String

从指定的URL下载文件并添加为邮件附件。

参数bstrAttachAs是用来更改添加为邮件附件的文件名。

AppendBodyFromFile(FileName)

清除邮件正文,并把指定文件的内容作为邮件正文。

AppendHTML(Text)

从邮件追加HTML格式正文,如例所示:

Message.AppendHTML(“

HelloWord

”)

AppendText(Text)

向邮件添加文本正文。

Clear()

清除所有邮件消息,是成为一个空对象。

ClearAttachments()

清除附件列表。

如:

Message.ClearAttachments

ClearCustomHeaders()

清除所有自定义的邮件头。

ClearRecipients()

清除所有收件人地址列表。

Close()

释放Jmail与邮件服务器连接而使用的缓存(Cache)。

DecodeHeader(Header):

String

输出一个邮件头消息。

ExtractEmailAddressesFromURL(bstrURL,bstrAuth)

从指定的网制(URL)读取并添加邮件列表。

GetMessageBodyFromURL(同上)

删除邮件正文并用指定的URL的内容代替。

KeyInformation(keyIdentifier):

pointer

返回一个PGPKey对象。

LoadFromStream(Stream)

从数据库流读取数据,该数据库流必须符合RFC822标准。

LogCustomMessage(Message)

给Jmail日志文件添加自定义日志。

此函数只有在logging属性被设置为True时有效。

Nq()

将邮件追加到发送队列等待发送。

ParseMessage(MessageSource)

解析一个邮件,数据流必须符合RFC822格式标准。

SaveToStream(Stream)

保存邮件到数据流,数据流必须符合RFC822格式标准。

Send(MailServer,enque):

Boolean

发送邮件。

邮件服务器是一个描述邮件服务器名称或地址的字符串,用户名和密码是可选项。

当要发送认证邮件时使用格式为:

用户名:

密码@邮件服务器

SendToNewsGroup(ServerName,NewsGroup)

使用指定的NNTP服务器发送邮件到新闻组,多个邮件用“,”隔开。

About():

string

设置一些附加信息。

Attachments():

Pointer

返回邮件的附件集合。

SetAttachments=Message.Attachments

Body():

String

返回邮件正文。

Response.Write(Message.Body)[NextPage]

 BodyText():

String

返回全部的文本正文。

Response.Write(Message.BodyText)

Charset():

String

设置邮件使用的字符集。

默认为US-ASCII,支持中文则设置为GB2312。

ContentTransferEncoding():

String

设置邮件编码。

默认为:

Quoted-Printable.

ContentType():

string

返回正文类型。

Date():

Date

返回邮件发送时间。

DeferredDelivery():

Date

设置邮件定时发送。

Encoding():

String

设置附件的默认编码:

Base64或Quoted-Printable

EncryptAttachments():

Boolean

设置为True时,所有的附件都被加密,当然是编译器可用的情况下。

其默认值为True.

ErrorCode():

Integer

如果message.silent设置为True时,该函数包含错误号。

ErroeMessage():

String

如果message.silent设置为True时,该函数包含错误描述。

ErroeSource():

String

如果message.silent设置为True时,该函数包含错误来源。

From():

String

返回或设置发件人的Email地址。

FromName():

String

返回或设置发件人的名字。

HtmlBody():

String

返回或设置邮件正文的HTML部分。

ISOEncodeHeaders():

Boolean

邮件头是否使用iso-8859-1编码。

(默认为True)

Log():

String

当Logging为True时,该函数返回创建的日志。

Logging():

Boolean

是否启用日志。

Message.Logging=True时,启用日志。

MailData():

String

返回邮件的源代码。

MailDomain():

String

设置发送邮件时使用的邮件服务器。

MailServerPassWord():

String

当邮件服务器使用SMTP发信认证时,该函数设置登录密码。

MailServerUserName():

String

当邮件服务器使用SMTP发信认证时,该函数设置登录帐号。

MimeVersion():

String

声明Mime版本,默认为1.0。

MsPickupdirectory():

String

指定MSSMTP服务的Pickup文件夹的位置。

PGPEncrypt():

Boolean

当邮件是使用PGP发送时并该属性被设置为True时,该邮件将被自动加密。

PGPSign():

Boolean

当邮件是使用PGP发送时并该属性被设置为True时,该邮件将被自动签名。

Priority():

Byte

设置邮件的优先级:

1、2和3

Recipients():

Pointer

返回收件人集合。

RecipientsString():

String

返回收件人集合(只读)。

ReplyTo():

String

指定一个回复地址。

Silent():

Boolean

当设置为True时,Send()方法就会忽略错误并不将错误信息返回给操作系统。

SimpleLayout():

Boolean

当设置为True时,发信时Jmail不会添加邮件头到邮件里。

Size():

Integer

返回邮件的总字节数。

Subject():

String

设置邮件标题。

Text():

string

返回完整的邮件内容。

Version():

String

返回Jmal的版本信息。

4、Headers对象

属性(或方法)

描述

GetHeader(HeaderName):

String

返回指定的邮件头的值。

Text():

String

返回所有的邮件头的值。

5、Recipients对象

属性(或方法)

描述

Add(Value)

追加一个收件人到集合中。

Clear()

清除集合中的全部记录。

Count():

Integer

返回集合中收件人的总数。

Item(Index):

Pointer

返回集合中的一个指定的收件人。

6、Recipient对象

属性(或方法)

描述

New(Name,Email,recipientType):

Pointer

创建一个可以添加到收件人集合中Recipients的收件人。

Email():

String

返回收件人的邮件。

Name():

String

返回收件人的姓名。

ReType():

Integer

返回收件人模式(收件人To=0,抄送CC=1,暗送BCC=2)。

7、Attachments对象

属性(或方法)

描述

Add(Attachment)

添加一个附件到集合。

Clear()

清除集合中的全部附件。

Count():

Integer

返回集合中附件的总数。

Item(Index):

Pointer

返回集合中指定的附件。

[NextPage]

  8、Attachment对象

属性(或方法)

描述

New(FileName,ContentType,Data):

Pointer

创建一个可以加入到Attachments集合的附件。

如果指定Data的值,那么Jmail将创建一个以Data参数为内容的自定义附件。

SaveToFile(FileName)

保存附件到硬盘。

ContentType():

String

返回附件类型(ContentType)

Data():

String

返回附件的内容。

BinaryData():

String

以二进制模式返回附件的内容。

IsInline():

Boolean

如果附件被设置为可嵌入(inline),则返回True。

Name():

String

返回附件的文件名称。

Size():

Integer

返回附件的大小。

9、MailMerge对象

属性(或方法)

描述

BulkMerge(RecordSet,enque,Maildestination)

参照邮件模板合并所有记录,要指定使用的pickuo文件夹或邮件服务器。

Expand():

Pointer

参照用户指定的方式合并邮件模板(mailTemplate)。

ExpandFromRecordSet(RecordSet):

Pointer

参照邮件模板(mailTemplate)合并ADO对象中的一例。

SetDebugMode(TestMailAddress,TestCount)

将邮件合并(mailMerge)设置为测试模式。

Item(VariableNmae):

String

手工设置合并参数。

注意:

该功能不使用于ADO数据例的合并。

MailTemplate():

Pointer

设置一个创建好的Message对象,这个对象将被作为邮件合并的模板。

MergeAttachments():

Boolean

当该属性设置为True时,附件被作为邮件合并的一个选项。

10、PGPKeys对象

属性(或方法)

描述

Count():

Integer

返回密码的总数。

Item(Index):

Pointer

返回PGPKey信息对象。

11、PGPKeyInfo对象

属性(或方法)

描述

KeyCreateDate():

String

返回邮件密码创建的时间。

KeyID():

String

返回密码的ID号。

KeyUser():

String

返回创建密码的用户名。

12、SpeedMailer对象

属性(或方法)

描述

EnqueMail(FromEmail,RecipientEmails,

Subject,Body,MsPickupdirectory)

添加一个邮件到发送队列。

内容、主题等数据通过该方法的参数传递。

SendMail(FromEMail,RecipientEMails,

Subject,Body,MailServers)

通过SMTP发送一封邮件。

内容、主题等数据通过该方法的参数传递。

SendXMLMail(XML)

关于该函数的用法请访问:

四、利用Jmail4.3邮件组件发送邮件示例:

通过以上的介绍,相信读者对DimacW3Jmail及其一些常用的对笠延辛吮冉先娴牧私狻O旅娼ü桓隼永唇步馊绾未唇╳3Jmail对象,并使用它来创建一个新邮件,设置邮件的标题、内容等并发送该邮件。

JmailSend.asp

<%@Language=”VBScript”%>

<%

Response.Buffer=True

‘创建Jmail.Message对象实例oJmail

SetoJmail=Server.CreateObject(“Jmail.Message”)

‘启动日志功能

oJmail.Logging=True

‘不将错误返回给操作系统

oJmail.Silent=True

‘设置邮件发送者的邮件地址

oJmail.From=”jackywen01@”

‘设置邮件发送者的姓名

oJmail.FromName=”小虎”

‘设置接收邮件人的邮箱地址

oJmail.AddRecipient“yourfriend@”

‘设置邮件标题

oJmail.Subject=”邮件测试系统”

‘邮件正文

oJmail.Body=”朋友:

”&vbCrLf&vbCrLf&”最近,我使用Jmail开发一个邮件发送系统。

‘发送邮件,Mail.myD假设为SMTP服务器

oJmail.Send(“Mail.myD”)

%>

接下来我们再来看一个比较简单的邮件接收系统。

这个例子的执行过程,首先是从存放邮件的服务器上取出邮件,然后把它同附件一起显示在WEB也面上。

JmailReceipt.asp

<%@LANGUAGE=VBSCRIPT%>

<%

SetpJmail=Server.CreateObject("JMail.POP3")

pJmail.Connect"username","password",""

Response.Write("你有"&pJmail.count&"封新邮件

")

ifpJmail.count>0then

Setmsg=pJmail.Messages.item

(1)

ReTo=""

ReCC=""

SetRecipients=msg.Recipients

separator=","

Fori=0ToRecipients.Count-1

Ifi=Recipients.Count-1Then

separator=""

EndIf

Setre=Recipients.item(i)

Ifre.ReType=0Then

ReTo=ReTo&re.Name&" ("&re.EMail&")"&separator

else

ReCC=ReTo&re.Name&" ("&re.EMail&")"&separator

EndIf

Next

FunctiongetAttachments()

SetAttachments=msg.Attachments

separator=","

Fori=0ToAttachments.Count-1

Ifi=Attachments.Count-1Then

separator=""

EndIf

Setat=Attachments(i)

at.SaveToFile("c:

\fujian\"&at.Name)

getAttachments=getAttachments&"

at.Name&""">"&at.Name&"("&at.Size&"bytes)"&_

""&separator

Next

EndFunction

%>

主题<%=msg.Subject%>
发件人<%=msg.FromName%>
收件人<%=ReTO%>
抄送人<%=ReCC%>
附件<%=getAttachments%>
正文
<%=msg.Body%>

<%

endif

pJmail.Disconnect‘断开POP3连接

%>

至此,一个简单的邮件发送和接收系统就开发完成了。

至于有些网友要开发比较复杂的邮件系统,可以结合以上所讲的对象及其属性方法来开发,肯定会开发出功能强大齐全的邮件系统。

                                                    

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 其它课程

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1