作者: 出處:Yesky
發送和接收電子郵件,對於某些執行特殊任務的應用程序而言,是壹個十分有用的功能。例如,壹個監視網絡服務器資源使用情況的工具軟件,如果它具有自動發送電子郵件的功能,那麽當它發現服務器的資源使用已經接近事先設定的臨界狀態時,便可以向系統管理員發送壹封告警的電子郵件,從而使系統管理員能夠及時地采取措施,以避免重大事故的出現。在Visual Basic中,應用程序可以通過調用微軟公司的MAPI(Messaging Application Programming Interface,消息應用程序編程接口),實現收發電子郵件的功能。筆者將在本文中結合簡單實例,向大家介紹在VB程序中實現電子郵件收發功能的編程方法。
編制具有收發電子郵件功能的VB程序,必須使用Visual Basic 4.0以上的版本,因為只有4.0以上的Visual Basic才帶有兩個實現電子郵件收發功能的核心控件:MAPI會話控件和MAPI消息控件。MAPI會話控件用於建立和控制壹個Microsoft Mail會話,MAPI消息控件用於創建和收發郵件消息。此外,程序必須運行在采用遵從MAPI的消息系統(如:Microsoft Exchange、Microsoft Mail、Outlook等)的環境中。
在開始編程之前,首先需要將MAPI控件加入VB工具箱。具體操作是:在VB菜單欄中選擇Tools菜單項中的Custom Controls命令,調出"Custom Controls"對話框,在其中的"Available Controls"列表框中選中"Microsoft MAPI Controls"表項,然後按"OK"命令按鈕退出該對話框。此後,工具箱中將新添兩個圖標,這就是MAPI會話控件和MAPI消息控件的圖標。
下面,筆者將以兩個簡單的VB程序為例,分別介紹發送郵件和接收郵件的程序編制方法。
郵件發送程序
郵件發送程序的基本處理過程是:根據用戶輸入信息組成郵件,然後使用MAPI消息控件的Send方法將郵件發出。編程步驟如下:
1、新建壹個VB項目。
2、將缺省窗體Form1的Caption屬性設置為"發送郵件"。
3、將MAPI控件加入VB工具框。
4、在Form1中加入壹個MAPI會話控件MAPISession1和壹個MAPI消息控件MAPIMessages1。
5、在Form1中加入三個文本框控件,將它們的Name屬性分別設置為txtSendTo、txtSubject、txtMessage,並將txtMessage的Multiline屬性設置為True。這三個文本框控件將分別用於填寫郵件的收件人、主題和內容。
6、在Form1中加入三個標簽控件,將它們的Caption屬性分別設置為"收件人"、"主題"和"內容",並將它們放在合適的位置用以標註相應的文本框控件。
7、在Form1中加入壹個命令按鈕控件,將其Caption屬性和Name屬性分別設置為"發送"和"cmdSend"。
8、將下列代碼加入Form1的Form_Load事件:
Private Sub Form_Load()
MAPISession1.SignOn
End Sub
9、將下列代碼加入Form1的Form_Unload事件:
Private Sub Form_Unload(Cancel As Integer)
MAPISession1.SignOff
End Sub
以上是壹部分, 後面的參見參考資料