| 网站首页 | 校园文化 | 视频在线 | 搞笑图片 | 廊坊师院 | 师院风光 | 商家联盟 | 关于我们 | 下载 | 学习考试 | 创业管理 | 求职相关 | 实用文档 | 留言 | 
您现在的位置: 廊坊师范学院最大网络交流平台 >> 实用文档 >> 师院论文 >> 计算机论文 >> 计算机应用 >> 文章正文 今天是:
基于vc与word、outlook对象模型的email实现
作者:佚名 文章来源:不详 点击数: 更新时间:2007-9-12 23:36:11

摘要: 分析了三种不同的实现邮件发送方法, 通过vc可视化开发环境,结合word及outlook对象模型,实现将word格式以及其他文件格式的文件作为email的邮件体,从而利用word的强大编辑能力构成与发送丰富多彩的邮件。

关键词:SMTP协议   MAPI编程接口    对象模型    动态链接库   电子邮件

随着信息技术的飞速发展,电子邮件作为一种通讯手段,在日常生活和办公领域中发挥着巨大的作用,一些行业需要以邮件为载体,实现信息的实交互、反馈、统计等功能。Visual c++作为功能强大的可视化编程工具正在日益得到广泛的应用。使用vc开发可以实现多线程,支持面向对象、模块化、等特点,大大提高软件的开发效率,同时结合 word、excel、outlook等office 对象模型,从而有望实现含多格式邮件体的邮件定时、批量的发送及其信息反馈的自动处理。本文提出了一种利用vc实现邮件发送的方法,并且实现了将word、html文档插入到邮件体,从而达到即有web网页的生动,又具有邮件的快捷、方便的效果。
1.      基于vc的email功能实现
在vc环境下有三种方法可以实现邮件的发送,下面分别介绍:
(1):使用SMTP进行设计。电子邮件系统所应用的传输协议包括SMTP和POP协议。SMTP即简单邮件传输协议,属于TCP/IP协议族,.使用SMTP设计基于以下通讯模型:针对用户的邮件请求,发送SMTP与接受SMTP之间建立一个双向通道。一旦传送通道建立,SMTP发送者发送mail命令指明邮件发送者。如果SMTP接受者接受,则返回OK应答。SMTP发送者再发出RCPT命令确认邮件是否接受到。故在vc环境下,基于SMTP协议的邮件发送流程为:
 
SMTP协议也有自身的局限性,它只能传输ASCAII文本文件,但对于一些二进制数据文件需要进行编码后才能传输。
(2)使用MAPI进行设计。MAPI是一系列的编程接口规范,而不是应用程序、动态链接库或系统服务程序。它们可以将任何用于电子邮件或工作组的应用程序与适应MAPI的消息服务天衣无缝地连接在一起。在这个规范中详细说明了用户的应用程序和服务提供应用程序是如何通过API实现交互的。MAPI体系包括以下几部分:①MAPI的用户应用程序接口。包括简单的MAPI、CMC9(通用信报调用)、扩展MAPI和Active/OLE报文接口。②MAPI支持的客户应用程序的类型。包括报文感知应用程序、报文激活应用程序和基于报文的应用程序。③MAPI的服务供应程序。包括地址提供者、报文提供者、传输提供者。使用vc开发程序首先需要装载动态链接库文件MAPI32.DLL,然后是得到程序将会使用到的各个函数的地址常用的函数为:MAPILogon(建立会话函数)、MAPILogoff(结束会话函数)、MAPIFreeBuffer(释放缓冲内存函数)、MAPISendMail(信报发送函数)。通过调用以上函数即可实现邮件的发送。
  由于MFC对MAPI进行了很好的封装,使开发信报应用程序的工作大大简化,同时MAPI提供了大量的函数和接口,可以提供丰富的信报功能,然而却很难在邮件体里插入多种格式的文件,只能包含在附件里,对于某些基于邮件的市场活动等,很难吸引邮件接受者的注意,故而达不到满意的效果。
(3)使用outlook对象模型进行设计。使用outlook对象模型可以在vc开发环境下实现outlook所有的信报功能,结合vc语言的多线程、模块化设计与outlook的强大的信报处理功能,从而可以实现邮件的自动、定时发送,并可以实现多格式邮件体,在实现过程中相对以上两种方法更加简单易行,本文重点介绍如何利用outlook来实现。
2.      Outlook、word对象模型的简单介绍
Microsoft office 通过一个对象的等级系统和被称为对象模型的对象集合,将其功能提供给VBA语言,一个程序包含两个基本要素:内容和功能。内容指的是程序所包含的信息,也就是文档等信息;功能指的应用程序内容的所有方式,例如打开、关闭、删除等。组成程序的内容和功能以离散的单元提交给VBA,称为对象。大部分情况下,程序提供给VBA的对象集同所有工作需要的对象对应。程序提供的对象根据相关性以等级关系组织起来。最高级对象为Application,在其底下又有许多的子对象,如Excel中的Workbook对象,word中的Document对象,通过使用对象的属性和方法,可以使用office提供的所有功能。
   以下简单介绍在本文使用的对象。
(1)      outlook对象模型:
application对象。该对象是outlook的核心对象,即根对象,它提供了对其它所有对象的访问。
Namespace对象。该对象是outlook数据源的一个抽象根,虽然该对象不被使用,它还是提供了对在对象树底层上排在自己下面的对象的访问。
Item对象。Outlook中最基本的信息单元。本文将使用mailitem对象。
Explorer对象。文件夹中项目的可视化表示,outlook用explorer显示item对象。
Impector对象。用来显示项目的outlook窗体。Inspector之于项目,如同explorer之于文件夹。
(2)      word对象模型
application对象。 Word的根对象。
Document对象。该对象为word中的文档对象,相对于word中的某一具体文档。
Range对象    document对象的某一特定区块,可以通过不同的参数指定,比如一个段落、一个表格等。
3. 使用outlook对象模型进行设计
使用outlook对象模型,需要在程序中包含对office对象的引用,获得命名空间,然后调用对象的属性和方法,以下列出了部分程序代码。
  (1)在stdafx.h 文件,加入以下语句:

#import "c:\program files\Microsoft Office\Office\msoutl9.olb"  /*outlook对象引用文件*/
#import "c:\program files\Microsoft Office\Office\msword9.OLB" \
 rename_namespace("WD")  /*word对象引用文件*/
#import <mshtml.tlb> rename

[1] [2] [3] 下一页


文章录入:admin    责任编辑:admin 
  • 上一篇文章:

  • 下一篇文章:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
     

    高校无厘精彩推荐
    固顶文章 校花扎堆!大学男生最向往的女生
    普通文章 有调查称女大学生未婚同居者62.4
    普通文章 网友公认纯美校花 今成为北影大一
    普通文章 大学各系的接吻方式
    普通文章 中国高校十大荒唐事件 从象牙塔到
    普通文章 “图说八荣八耻”宣传画进校园
    普通文章 图文:大学校园内的性学讲座
    普通文章 中国青年DV大赛-激扬互动视界
    普通文章 男子在校园内放飞99只蝴蝶求爱
    普通文章 让女生流口水的绝版帅哥

    高校动态
    固顶文章 廊坊师范学院2007年本科新生入学
    普通文章 大一新生流行高校论坛虚拟报到老
    普通文章 两名在校大学生借环保公益广告创
    普通文章 北大学生告微软侵隐私 称其程序收
    普通文章 贫困大学生因恋爱心理扭曲 持枪杀
    普通文章 大学四年,我没有谈过一次恋爱
    普通文章 大二学生对话新生:恋爱放纵不是大
    普通文章 大学新生军训强制女生剪短头发遭
    普通文章 大学新生军训强制女生剪短头发遭
    普通文章 找关系开发人脉 85后大学新生打探

     

    最 新 热 门 最 新 推 荐 相 关 文 章
    基于Linux内核的键盘模拟…
    基于μC/OS的嵌入式系统…
    基于Vxworks实时操作系统…
    基于J2ME平台的SOAP协议…
    基于ARM核的AT75C220及其…
    基于CDMA的无线图像监控…
    基于EDA技术的FPGA设计
    基于ASP.NET的Web网络应…
    基于ASP技术开发Web数据…
    基于Excel财务数据变化时…
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    | 设为首页 | 加入收藏 | 关于我们 | 友情链接 | 发展历程 | 用户留言 | 管理登录 | 
    420Studio