你好,欢迎来到电脑编程技巧与维护杂志社! 杂志社简介广告服务读者反馈编程社区  
合订本订阅
 
 
您的位置:文章管理 / 本期精品文章
VB环境下实现电子邮件的发送和接收
 

 

摘 要   本文主要介绍如何使用微软公司的MAPIMessaging Application Programming Interface,消息应用程序编程接口),实现电子邮件的收发功能。

关键词  VB,电子邮件,消息应用程序

 

一、引言

发送和接收电子邮件,对于某些执行特殊任务的应用程序而言,是一个十分有用的功能。在Visual Basic中,应用程序可以通过调用微软公司的MAPIMessaging Application Programming Interface,消息应用程序编程接口),实现收发电子邮件的功能。编制具有收发电子邮件功能的程序,必须使用Visual Basic 4.0以上的版本,因为只有4.0以上的Visual Basic才带有两个实现电子邮件收发功能的核心控件:MAPI会话控件和MAPI消息控件。MAPI会话控件用于建立和控制一个Microsoft Mail会话,MAPI消息控件用于创建和收发邮件消息。此外,程序必须运行在采用遵从MAPI的消息系统(如:Microsoft ExchangeMicrosoft MailOutlook等)的环境中。

二、模块设计

模拟电子邮件Outlook Express的基本功能包括邮件的收发、附件的发送和查看、邮件的回复、电话薄的设置、打印邮件和邮件设置。程序共有五个窗体和一个模块组成。其中窗体包括阅读邮件消息的窗体,书写和发送邮件的窗体,显示邮件消息列表的窗体,收发邮件设置窗体和主窗体。

1.    模块部分

在程序开始首先编写模块代码,定义当MAPIMessages控件被激活时,Action属性使用的常数,该属性决定将执行什么操作。以下是声明读取注册表内容的函数:函数Attachments,此子程序的功能是将有附件的信息装载到窗体msg的列表框”Alist”中;函数CopyNamestoMsgBuffer,此子程序的功能是删除原来的收信人地址,并将窗体msg中填写的收信人和抄送人地址添加到发送邮件的地址;函数DateFromMapiDate$,根据给定的日期返回一定格式的日期的表示形式;函数DeleteMessage,用于删除当前选中的邮件;函数DisplayAttachedFile,根据文件类型查看附件文件;函数FindMsgWindow,判断当前所有子窗体中是否包含有相对邮件索引的邮件,如果没有则返回值为-1;函数GetHeader,用于从控件取得邮件的头信息;函数GetMessageCount,获取邮箱中所有消息(邮件)的数量;函数GetRCList,从MAPIMessages控件中获得所有收信人的姓名,姓名之间用分号隔开,返回值为所有收信人姓名;函数KillRecips,从控件中删除所有收信人地址;函数LoadList,将邮件的信息装载到邮件列表窗体中的列表框中;函数LoadMessage,将当前消息(根据Index)装载到窗体msg中,msg窗体可以是查看消息的窗体MsgView,也可以是书写新消息的窗体NewMsg;函数LogOffUser,注销发送邮件连接卸载所有的子窗体,设置各个菜单项及工具栏按扭的可用状态;函数PrintLongText,打印消息的子程序之一,用于打印消息的正文;函数Printmail,打印消息的子程序之一,用于取得要打印的消息;函数PrintMessage,打印消息的子程序之一,用于设置打印机和取得打印消息头;函数SetRCList,根据存储收信人姓名的字符串NameList(姓名用分号隔开),设置收信人姓名;函数UpdateRecips,更新收信人和转发的地址;函数ViewNextMsg,查看下一个消息。

  推荐精品文章

·2024年6月目录 
·2024年5月目录 
·2024年4月目录 
·2024年3月目录 
·2024年2月目录 
·2024年1月目录
·2023年12月目录
·2023年11月目录
·2023年10月目录
·2023年9月目录 
·2023年8月目录 
·2023年7月目录
·2023年6月目录 
·2023年5月目录

  联系方式
TEL:010-82561037
Fax: 010-82561614
QQ: 100164630
Mail:gaojian@comprg.com.cn

  友情链接
 
Copyright 2001-2010, www.comprg.com.cn, All Rights Reserved
京ICP备14022230号-1,电话/传真:010-82561037 82561614 ,Mail:gaojian@comprg.com.cn
地址:北京市海淀区远大路20号宝蓝大厦E座704,邮编:100089