设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 9536|回复: 1
打印 上一主题 下一主题

[求助]MAPI郵件系統的使用

[复制链接]
跳转到指定楼层
1#
发表于 2002-11-8 18:58:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
MAPI郵件系統與POP郵件系統有什麼區別。
MAPI郵件系統是怎麼建立的,常用的MAPI郵件系統都有哪些,譔怎樣使用。
多謝!
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享分享 分享淘帖 订阅订阅
2#
发表于 2002-11-8 20:06:00 | 只看该作者
MAPI接口是由微软公司提供的一系列供使用者开发Mail、Scheduling、bulletin board、communication程序的编程接口。在使用MAPI设计程序时,首先必须在程序和MAPI之间建立一条或数条Session;当Session建立好之后,Client端程序就可以使用MAPI所提供的功能。

MAPI的功能主要分成三大部分:Address Books、Transport和Message Store。Address Books主要负责设置E-mail type、protocol等参数;Transport负责文件的发送和接收等功能;Message Store则负责发送接收等信息的处理。

说了这么多,MAPI接口好像很可怕。不过没关系,Visual Basic所提供的MAPISession control及MAPIMessage control,已经将许多复杂的部分包装成简单的property和功能,我们只需要对property及功能作一些简单的设置,就可以写一个mail发送和接收的程序。

以下笔者将用Visual Basic的MAPI control,来设计mail传送和接收的程序。

E-mail发送部分

Step 1:设置Exchange各项参数

进入Exchange系统,选择新增设置文件;屏幕上会显示所需要的信息服务,选择Internet Mail。将设置文件的名称设为test。屏幕会显示两个选项,您可以选择以modem方式,或以network 方式连接。笔者所用的是Internet专线,所以选择network;假若您是使用 PPP拨号方式连接Internet,就要选择modem。

选择network后,Exchange会要求我们输入mail server的IP address。笔者现在所使用的 Mail server地址是202.96.128.111,在本程序中便将它设置为该地址。

接着将Transform message的模式设置为automatic,这样当我们连接到Mail server时,新的信息会自动download到local端。

接下来,将您所使用的Email address、full name、password、download path一步一步设置好,这样就完成了Exchange各项参数的设置。

Step 2:程序设计

在File选项中选择New Project建立一个新的工程,这时屏幕上会看到许多选项,例如ActiveX Document.EXE、ActiveX Document.DLL、ActiveX.EXE、ActiveX Control等...,这时要选Standard.EXE。

在Project下,选择Property属性选项;在general选项下,将Project Name改为email-send, 并将Form名称及Caption更改为email-send  。

在屏幕的Form上加入一个MAPImessage control,取名为MAPIm1;加入一个MAPIsession control,取名为MAPIs1;加入三个textbox control,取名为subject、content、addr。并在三个textbox前各加入一个Label,将Caption分别改为subject、content、addr。

为方便读者了解彼此关系,以下表解释一遍:

(TextBox) Name


subject (输入信件标题)

content (输入信件内容)

addr (输入信件要传送的位址)

<hr>

(Label) Caption


subject (输入信件标题提示)

content (输入信件内容提示)

addr (输入信件要传送的位址提示)

将MAPIm1的各项property设置如下:

download mail=TRUE

logoUI= TRUE

newsession=FALSE

username="test"

这里将download mail设置为TRUE,当程序和mail server第一次连接时,会将新的mail download到local端。将logoUI设置为TRUE,则当您程序中logon名称输入错误时,系统会显示一个Message Box来让您输入正确的名称。由于这个程序仅使用到一条session,我们将它的值设置成FALSE。当然啦!如果您有许多session要建立的话,也可以将它设置成TRUE。 username中所填的,是我们在Exchange中所新增的设置文件名称;如果没有填内容的话,系统将会显示一些message box请您输入文件。

在屏幕的Form上加入三个Button control,logon、logoff与send,分别将Caption改为log on、log off、send。

(Button)

Name Caption


logon (执行登入命令) logon

logoff (执行登出命令) logoff

send (执行传出信件命令) send

在 logon_Click()中加入以下程序代码,这个动作是使我们登录到mail server。

MAPIS1.SignOn

MAPIM1.SessionID = MS1.SessionID

MsgBox "your id is" + Str(MS1.SessionID)






MS1.SignOn是作登录的动作。在登录时,因为已经将MAPIm1 control的download mail属性设置为TRUE,所以可以在屏幕上看到message box显示系统正在download mail。登录成功后,系统会传回一个sessionID,将该ID填入MAPIM1的SessionID中,这样就可以利用这条session来传送E-mail。

在 logoff_Click()中加入以下程序代码,这个动作是使我们离开mail server。

MAPIS1.SignOff

在 send_Click()中加入以下程序代码,这个动作是使我们发送email。

MAPIM1.Compose

MAPIM1.RecipDisplayName = addr.text

MAPIM1.AddressResolveUI = True

MAPIM1.MsgSubject = subject.text

MAPIM1.MsgNoteText = content.text

MAPIM1.Send

MsgBox "you successful"

Compose命令的主要目的,是使您可以改变RecipDisplayName的内容,将所需传送的E-mail地址、主题、文章内容分别填入RecipDisplayName、MsgSubject、MsgNoteText,接着用send命令发送。

Step 3:用IE 3.0 Mail程序测试程序
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2025-1-6 06:46 , Processed in 0.097548 second(s), 25 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表