• 网络学院
  • IT资讯
  • 操作系统
  • 网络技术
  • 软件应用
  • 办公软件
  • 编程技术
  • 网站架设
  • 数据库类
  • 平面设计
  • 多媒体类
  • 游戏资讯
  • 教学论文
  • 认证考试
用Visual
  站点:
  • 首 页
  • 最新软件
  • 文章教程
  • 国内软件
  • 国外软件
  • 绿色软件
  • 源码下载
  • 字体下载
用Visual Basic设计E-mail程序
软件发布 用Visual Basic设计E-mail程序
网络软件 系统工具 应用软件 联络聊天 图形图像 多媒体类 行业软件 游戏娱乐 编程开发 安全相关 教育教学 数码软件 绿软下载
热门软件: QQ 瑞星 pplive e话通 木马克星 千千静听 office2000 五笔字根 Photoshop 视频分割
返回文章教程首页 >> 文章首页 >> 编程技术 >> VB & VB.NET教程 >> 用Visual Basic设计E-mail程序

用Visual Basic设计E-mail程序

添加时间: 2006-2-16 5:14:37  作者: VB教程  阅读次数:74   来源: http://www.d9soft.com

        MAPI简介
  
  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 (输入信件要传送的位址)
  

  (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程序测试程序
  执行上面设计的email-send程序。在subject textbox中填入"发信测试",在address textbox中填入gzsydici@public1.guangzhou.gd.cn,在content textbox中输入要传送的内容:"大家好!这是发信测试",接着按传送。这样信件就发送出去了!
  执行IE 3.0选择接收信件,在mail选项中选择read mail。我们会在inbox中看到一封标题为"发信测试"的信件,接着我们看看它的内容,没错!那就是我们刚寄出的测试信。

  E-mail接收部分
  Step 1:程序设计
  在File选项中选择New Project建立一个新的工程。在屏幕上看到许多选项,如ActiveX Document.EXE、ActiveX Document.DLL、ActiveX.EXE、ActiveX Control等,这时要选Standard.EXE。

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

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

  将MAPIm1的各项property设置如下:
  download mail=TRUE
  logoUI=TRUE
  newsession=FALSE
  username="test"
  这些设置原理如同设计发送mail程序部分。接着,在屏幕的Form上加入一个Buttoncontrol get-mail,将Caption改为get mail。如同发送mail 程序部分和mailserver建立一条session。

  在 get-mail_Click() 中加入以下程序代码,这个动作是使我们接收email。

  MAPIM1.Fetch
  Form1.Caption=MAPIM1. MsgCount
  MAPIM1.MsgIndex=CINT(indexno.text)
  subjec.Text = MM1.MsgNoteText
  content.Text = MAPI1.MsgSubject
  
  Fetch命令,是将信件抓到系统存贮器的inbuffer中。我们将信件抓回来后,可以由MsgCount property知道信件数量。接着可以用MsgIndex设置要看哪一封信件的内容、标题。

  Stept 2:测试mail接收程序
  首先用任何一种mail程序,任意书写几封信到mail server。在Form1的Caption中,我们会看到所接收的信件的数量。执行上面设计的email-get程序,在indexno textbox中填入1。接着按get mailButton,这样信件内容及标题就会显示在content、subject两个TextBox中。恭喜您成功了!

 

上下文章:

 

上一篇文章: 用VB实现任意修改Win桌面背景 下一篇文章: VisualBasic中用户界面设计原则

相关文章:

  • 你的email服务器准备好应对账号搜集攻击了吗
  • QMAIL+MH设计方案(一)
  • QMAIL+MH设计方案(二)
  • QMAIL+MH设计方案(三)
  • QMAIL+MH设计方案(四)

相关软件:

  • 胜新通用条形码设计打印系统 6.09
  • 搜易邮件地址扫描器(EmailScanner) V3.5
  • Google电邮搜索[GoogleMailScan] V2.3
  • Visual Studio 2005 Express Editions (Visual Basic)
  • Visual Graph专业图形引擎 V4.6
  • Visual Basic V5.0 Runtime Files

 

快速导航

  • 网络学院
  • 精品汇聚
  • 字体下载
  • 教程下载
  • ASP源码
  • PHP源码
  • Net源码
  • JSP 源码

编程技术分类导航

  • ASP & ASP.NET教程
  • PHP教程
  • JSP教程
  • C/C++教程
  • VB & VB.NET教程
  • VC教程
  • Delphi教程
  • BCB教程
  • VFP教程
  • PB教程
  • JAVA教程
  • XML教程
  • C#教程
  • CGI教程

本类经典文章推荐

  • C++程序设计之四书五经
  • VB入门教程之四
  • VB入门教程之三
  • VB入门教程之二
  • VB入门教程之一
  • 压缩被DBGIRD控件正在使用的MDB数...
  • 谈谈VB的数据库编程方式
  • 在VB中用DAO实现数据库编程
  • Data控件使用有密码的Access数据库
  • 用DAO或ADO正确访问Access 2000

VB & VB.NET教程阅读排行

  • VB入门教程之一
  • VB入门教程之二
  • VB入门教程之三
  • VB入门教程之四
  • 如何编写高质量的VB代码
  • 初学者必知:VB10个小编程
  • VB访问SQL Server数据库技术全揭密
  • 怎样在VB中控制Word?
  • 用DAO或ADO正确访问Access 2000
  • VB中列表框的使用技巧说明

编程技术阅读总排行

  • VB入门教程之一
  • Java连接数据库实例
  • 第二章 PowerBuilder 入门之创建新...
  • VC++之List Box/Check List Box控...
  • 第一章 什么是PowerBuilder
  • VC++ List Ctrl控件
  • VC++ Combo Box/Combo Box Ex控件
  • 学C++不得不看的一篇文章
  • VB入门教程之二
  • VC++之Button控件

广告位置

字母检索 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 回到顶部

关于我们 | 版权声明 | 免责条款 | 广告联系 | 软件发布 | 下载帮助 | 下载排行 | 网站地图 | 特别鸣谢 | 友情连接

copyright; 2005-2008 D9soft.com 第九软件网 版权所有