手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>网络编程>Asp.Net编程>列表

用VB编写收发电子邮件程序

来源:互联网 作者:西部数码 时间:2008-04-09
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!


  Public Sub FetchNewMail()
  MAPIMessages1.FetchUnreadOnly = True
  MAPIMessages1.Fetch
  End Sub
  11、编写一个窗体级子例程DisplayMessage:

  Public Sub DisplayMessage()
  lblMsgCount.Caption = "第 " & _
  LTrim(Str(MAPIMessages1.MsgIndex 1)) & " 封邮件,总计 " & _   
  LTrim(Str(MAPIMessages1.MsgCount)) & " 封邮件"
  lblMsgDateReceived.Caption = MAPIMessages1.MsgDateReceived
  txtMsgNoteText.Text = MAPIMessages1.MsgNoteText
  lblMsgOrigDisplayName.Caption = MAPIMessages1.MsgOrigDisplayName   
  lblMsgSubject.Caption = MAPIMessages1.MsgSubject
  End Sub
  12、将下列代码加入Form1的Form_Load事件:

  Private Sub Form_Load()
  MAPISession1.SignOn
  MAPIMessages1.SessionID = MAPISession1.SessionID
  FetchNewMail
  DisplayMessage
  End Sub
  13、将下列代码加入cmdPrevious的Click事件:

  Private Sub cmdPrevious_Click()
  If MAPIMessages1.MsgIndex > 0 Then
  MAPIMessages1.MsgIndex = MAPIMessages1.MsgIndex - 1
  DisplayMessage
  Else
  Beep
  End If
  End Sub
  14、将下列代码加入cmdNext的Click事件:

  Private Sub cmdNext_Click()
  If MAPIMessages1.MsgIndex < MAPIMessages1.MsgCount - 1 Then
  MAPIMessages1.MsgIndex = MAPIMessages1.MsgIndex 1
  DisplayMessage
  Else
  Beep
  End If
  End Sub
  15、将下列代码加入cmdClose的Click事件:

  Private Sub cmdClose_Click()
  Unload Me
  End Sub
  在窗体加载过程中,窗体Load事件中的代码会读取新邮件,如果有新邮件,就显示第一个新邮件。如果有多个新邮件,则可以使用"上一封"和"下一封"命令按钮前后翻阅。

  接收邮件

  本例是读取用户收件箱中所有未读邮件,如果要读取收件箱中所有的邮件,那么只需在执行Fetch方法之前,将MAPI消息控件的FetchUnreadOnly属性设置为False。具体接收的邮件是否已经读过,可以通过MsgRead属性来判别。如果邮件的正文或附件曾经被浏览过,那么该邮件就会自动标记为已读,不过只浏览邮件的主题不会标记该邮件已读。

  邮件附件

  与处理邮件的方式一样,MAPI也为邮件的附件提供了一个计数器和一个索引。在处理收到的邮件时,可以通过检查AttachmentCount属性来确定该邮件携带了多少个附件,然后可以通过设置AttachmentIndex属性依次处理每一个附件。

  AttachmentIndex的合法取值范围为0至AttachmentIndex-1。在设置了AttachmentIndex属性值后,可以读取附件的下列属性:

  AttachmentName:当附件是一个文件时,该属性用于指定文件的名称。当附件是一个OLE对象时,该属性用于指定对象的类型。

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

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

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

  ·mapData-附件是一个数据文件
  ·mapEOLE-附件是一个嵌入式OLE对象
  ·mapSOLE-附件是一个静态OLE对象

  发送邮件时,上述属性的使用方法与接收邮件时相同,只不过由读操作改为写操作了。值得一提的是AttachmentIndex属性,发送邮件时可以将其设置为任意值。而AttachmentCount属性则会自动设置为正确的值,无需人为设置。

  小结

  通过分析上述两个程序的代码,可以归纳出具有收发电子邮件功能的VB程序的基本流程如下:

  1、使用MAPI会话控件建立一个邮件会话。

  2、使用MAPI消息控件进行邮件的处理工作。

  3、再次使用MAPI会话控件释放邮件会话。

  由于上述两个VB程序只是简单的示例,因而略去了一些与本文主题关系不大的细节,如错误处理等。在编制实用程序时,为了保证程序的可靠性,应该考虑加入这些细节部分。

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

上一页 1 2下一页
[打印] [关闭]
Google
相关文章
上一篇:制作自己的IE
下一篇:用VB6.0制作画图板
热点关注
IDC资讯 虚拟主机 域名注册 托管租用 vps主机 智能建站
网站运营 建站经验 策划盈利 搜索优化 网站推广 免费资源
网站联盟 联盟新闻 联盟介绍 联盟点评 网赚技巧
行业资讯 业界动态 搜索引擎 网络游戏 门户动态 电子商务 广告传媒
网络编程 Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术 Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷 Internet Explorer
网页制作 FrontPages Dreamweaver Javascript css photoshop fireworks Flash
程序设计 Java技术 C/C++ VB delphi
网络知识 网络协议 网络安全 网络管理 组网方案 Cisco技术
操作系统 Win2000 WinXP Win2003 Mac OS Linux FreeBSD
返回首页 |关于我们 | 联系我们 | 付款方式 | 创业联盟 | 价格总览 | 资讯中心 | 友情链接 | 网站地图 | 招贤纳士 | RSS