用VB收发电子邮件Word文档下载推荐.docx

上传人:b****6 文档编号:21004296 上传时间:2023-01-26 格式:DOCX 页数:8 大小:19.26KB
下载 相关 举报
用VB收发电子邮件Word文档下载推荐.docx_第1页
第1页 / 共8页
用VB收发电子邮件Word文档下载推荐.docx_第2页
第2页 / 共8页
用VB收发电子邮件Word文档下载推荐.docx_第3页
第3页 / 共8页
用VB收发电子邮件Word文档下载推荐.docx_第4页
第4页 / 共8页
用VB收发电子邮件Word文档下载推荐.docx_第5页
第5页 / 共8页
点击查看更多>>
下载资源
资源描述

用VB收发电子邮件Word文档下载推荐.docx

《用VB收发电子邮件Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《用VB收发电子邮件Word文档下载推荐.docx(8页珍藏版)》请在冰豆网上搜索。

用VB收发电子邮件Word文档下载推荐.docx

一、邮件发送程序

邮件发送程序的基本处理过程是:

根据用户输入信息组成邮件,然后使用MAPI消息控件的Send方法将邮件发出。

编程步骤如下:

1.xx一个VB项目。

2•将缺省窗体Forml的Caption属性设置为"

发送邮件"

3.将MAPI控件加入VB工具框。

4.在Forml中加入一个MAPI会话控件MAPISession1和一个MAPI消息控件MAPIMessages1。

5.在Forml中加入三个文本框控件,将它们的Name属性分别设置为txtSendTo、txtSubject、txtMessage,并将txtMessage的Multiline属性设置为True。

这三个文本框控件将分别用于填写邮件的收件人、主题和内容。

6.在Form1中加入三个标签控件,将它们的Caption属性分别设置为"

收件人"

、"

主题"

和"

内容"

并将它们放在合适的位置用以标注相应的文本框控件。

7.在Form1中加入一个命令按钮控件将其Caption属性和Name属性分别设置为"

发送"

cmdSend"

8.将下列代码加入Form1的Form_Load事件:

PrivateSubForm_Load()

MAPISession1.SignOn

EndSub

9.将下列代码加入Form1的Form_Unload事件:

PrivateSubForm_Unload(CancelAsInteger)

MAPISession1.SignOff

10.将下列代码加入cmdSend的Click事件:

PrivateSubcmdSend_Click()

WithMAPIMessages1

.MsgIndex=-1

.RecipDisplayName=txtSendTo.Text

.MsgSubject=txtSubject.Text

.MsgNoteText=txtMessage.Text

.SessionID=MAPISession1.SessionID

.Send

EndWith

MsgBox"

邮件发送完毕!

"

?

"

发送邮件"

程序运行后如图2所示。

@@.JPG图2发送邮件@@

二、邮件接收程序

邮件接收程序比邮件发送程序稍微复杂一些。

首先需要使用MAPI消息控件

的Fetch方法读取邮件,这个过程将把用户收件箱中所有未读邮件全部装入MAPI

消息控件中。

然后检查MAPI消息控件的MsgCount属性以确定通过Fetch方法读取的邮件的总数。

接着,可以通过设置MAPI消息控件的Msglndex属性来指定具体需要处理哪一封邮件。

需要说明的是,MsgIndex属性值的计数是从0开始的,也就是说,第一封邮件的索引号是0,第二封邮件的索引号是1,依次类推。

编程步骤如下:

1.xx—个VB项目。

2•将缺省窗体Form1的Caption属性设置为"

接收邮件"

4.在Form1中加入一个MAPI会话控件MAPISession1和一个MAPI消息控件MAPIMessages1。

5.在Form1中加入三个标签控件和一个文本框控件,将三个标签控件的Name属性分别设置为lblMsgDateReceived、lblMsgOrigDisplayName、IbIMsgSubject将文本框控件的Name属性设置为txtMsgNoteText,并将标签控件的Caption属性和文本框控件的Text属性的内容清空。

这四个控件将分别用于显示邮件的日期、发件人、主题和内容。

6.将txtMsgNoteText控件的Locked属性和Multiline属性设置为True,ScrollBars属性设置为2-Vertical。

7•在Form1中再加入四个标签控件用于标注上述四个控件,将它们的Caption属性分别设置为"

日期"

、"

发件人"

8.在Form1中加入一个标签控件,将其Name属性设置为

lblMsgCount,Caption属性设置为”第0圭寸邮件,总计0圭寸邮件”。

该控件用于显示接收的邮件总数以及当前正在处理第几封邮件。

9.在Form1中加入三个命令按钮控件,将它们的Name属性分别设置为cmdPrevious、cmdNext、cmdClose,Caption属性分别设置为”上一圭寸”、"

下一圭寸"

关闭"

10.编写一个窗体级子例程FetchNewMail:

PublicSubFetchNewMail()

MAPIMessages1.FetchUnreadOnly=True

MAPIMessages1.Fetch

11.编写一个窗体级子例程DisplayMessage:

PublicSubDisplayMessage()

lblMsgCount.Caption="

第"

&

_

LTrim(Str(MAPIMessages1.MsgIndex+1))&

圭"

邮件,总计"

LTrim(Str(MAPIMessages1.MsgCount))&

封"

邮件"

lblMsgDateReceived.Caption=MAPIMessages1.MsgDateReceived

xtMsgNoteText.Text=MAPIMessages1.MsgNoteText

lblMsgOrigDisplayName.Caption=

MAPIMessages1.MsgOrigDisplayNamelblMsgSubject.Caption=MAPIMessages1.MsgSubject

12.将下列代码加入Forml的Form_Load事件:

MAPIMessages1.SessionID=MAPISession1.SessionID

FetchNewMail

DisplayMessage

13.将下列代码加入cmdPrevious的Click事件:

PrivateSubcmdPrevious_Click()

IfMAPIMessages1.MsgIndex>

0Then

MAPIMessages1.MsgIndex=

MAPIMessages1.MsgIndex-1

Else

Beep

EndIf

14.将下列代码加入cmdNext的Click事件:

PrivateSubcmdNext_Click()

IfMAPIMessages1.MsgIndex<

MAPIMessages1.MsgCount-1Then

MAPIMessages1.MsgIndex+1

15.将下列代码加入cmdClose的Click事件:

PrivateSubcmdClose_Click()

UnloadMe

程序运行后如图3所示。

@@.JPG图3接收邮件@@

本例是读取用户收件箱中所有未读邮件,如果要读取收件箱中所有的邮件,那么只需在执行Fetch方法之前,将MAPI消息控件的FetchUnreadOnly属性设置为False。

三、邮件附件

与处理邮件的方式一样,MAPI也为邮件的附件提供了一个计数器和一个索引。

在处理收到的邮件时,可以通过检查AttachmentCount属性来确定该邮件携带了多少个附件,然后可以通过设置AttachmentIndex属性依次处理每一个附件。

Attachmentlndex的合法取值范围为0至Attachmentlndex-1。

在设置了AttachmentIndex属性值后,可以读取附件的下列属性:

AttachmentName:

当附件是一个文件时,该属性用于指定文件的名称。

当附件是一个OLE对象

时,该属性用于指定对象的类型。

AttachmentPath:

该属性用于指定做为附件的文件的全路径名。

AttchmentPosition:

该属性用于指定附件在邮件内容部分中的位置。

当邮件收发程序显示邮件内容时,将使用该属性提供的信息把附件的标志放在合适的位置。

AttachmentType:

该属性用于指定附件的类型,其合法取值为三个整数型数值,在VB中分别由下列常量表示:

mapData-附件是一个数据文件

mapEOLE附件是一个嵌入式OLE对象

mapSOLE附件是一个静态OLE对象

发送邮件时,上述属性的使用方法与接收邮件时相同,只不过由读操作改为写操作了。

值得一提的是AttachmentIndex属性,发送邮件时可以将其设置为任意值。

而AttachmentCount属性则会自动设置为正确的值,无需人为设置。

用VB怎么发送邮件?

代码?

VisualBasic6中发送邮件的新方法

用VB6编写发送邮件的程序,有多种E-mail组件可供选择,如

MAPIMessagesIIS4.0附带的CDONTS(NTSCollaborationDataObjects以及许多第三方厂商开发的Email软件等。

本文介绍用CDONTS开发VB下的邮件程序方法。

1•确认已安装SMTP服务器

首先,必须确认在IIS服务器上已安装SMTP服务器,这是安装OptionPack时被缺省安装的选项。

如果SMTP服务器已安装,在System32目录下会存在一个名为cdonts.dll的文件。

2.最简单的邮件发送程序

PrivateSubcmdSendMail_Click()

DimobjMailasObject

SetobjMail=CreateObject("

CDFONTS.DLL"

3.发送邮件附件

如果有附加的文件需要随同邮件传送,可以使用CDONT啲AttachFile方

法:

WithObjMail

.Subject="

Title"

.Body="

Hello"

.AttachFile"

c:

\document\sample.doc"

"

sample.doc"

SetobjMail=nothing

4.CD0NTS组件常用属性和方法

CDONTS组件常用的属性和方法列举如下:

属性:

Version:

返回CDONTS组件的版本号

MailFormat:

邮件格式,1-普通文本类型;

0-MIME类型

Cc:

设置一个或多个参阅的邮件地址

From:

邮件发送者的地址

To:

邮件接受者的地址

Subject:

标题

Body:

内容

BodyFormat:

内容格式,1-普通文本;

0-超文本方法:

AttachFile:

附加一个文件

AttachURL:

附加一个地址

Send:

发送邮件

5.发送超文本格式的E-mail

你一定见到过许多使用超文本格式的E-mail,其中不但可以有图片、声音,

甚至还可以嵌入动画。

如果给你的朋友也发送一封这样的邮件,一定会带给他

(她)意外的惊喜,因为这用一般的邮件发送程序是无能为力的。

以下使用

CDONTS组件发送一个HTML格式的邮件,其中包含有一幅名为sample.gif的图片,程序如下:

DimstrHTMLasString

StrHTML="

StrHTML=StrHTML+"

StrHTML=StrHTML+"

用CDONTS发送Email的例子"

以上例子嵌入了图片sample.gif"

.Body=strHTML

.AttachURL"

\mydata\sample.gif"

sample.gif"

.BodyFormat=0

.EmailFormat=0

到这里,相信大家一定发现SMTP邮件处理的一个缺陷了。

SMTP服务器接收你的输出消息,但并不做发送者名字和地址的验证,这本是由SMTP的异步

发送机制所决定的,但有人可能别有用心地用它来假扮别人发送邮件!

本文强烈建议各位切勿轻易试用,一旦让ISP知道你的行径,你的帐号极可能会被立即删除。

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

当前位置:首页 > IT计算机 > 计算机硬件及网络

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

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