Microsoft KB Archive/185171

= HOWTO: How to Send/Receive E-Mail Messages with Visual Basic =

Article ID: 185171

Article Last Modified on 1/11/2001

-

APPLIES TO


 * Microsoft Visual Basic 5.0 Professional Edition
 * Microsoft Visual Basic 6.0 Professional Edition
 * Microsoft Visual Basic 5.0 Enterprise Edition
 * Microsoft Visual Basic 6.0 Enterprise Edition

-



This article was previously published under Q185171



SUMMARY
This article shows how to create a simple MAPI client program. The article also demonstrates how to display existing messages and how to create and send new messages.



MORE INFORMATION
Through the use of MAPI controls in Visual Basic, it is relatively easy to create a MAPI Client. The following instructions and code show you how:

 Start up Visual Basic and select a Standard EXE project. On the Project menu, click Components, and select Microsoft MAPI Controls. There are two new icons displayed on the toolbar. Both icons have envelopes; one with a key, the other with a paperclip. These are your MAPI controls. Add these MAPI controls to your form.  Add the following items to the form:

     Four Labels Four CommandButtons Four TextBoxes

The label captions are as follows:

     Label1.Caption = "To:" Label2.Caption = "SUBJECT:" Label3.Caption = "FROM:" Label4.Caption = "MESSAGE:"

 Place the TextBoxes in numerical sequence with these labels (side-by- side for labels 1 thru 3, and below for label 4).  Label the CommandButtons as follows:

 Command1.Caption = "<<" Command2.Caption = ">>" Command3.Caption = "Connect" Command4.Caption = "Send" Command5.Caption = "Close Session" </li>  Add the following code to your form:

Option Explicit Dim X As Long

Private Sub Command1_Click

If X - 1 < 0 Then Else X = X - 1 MAPIMessages1.MsgIndex = X       Text1.Text = MAPIMessages1.RecipDisplayName Text2.Text = MAPIMessages1.MsgSubject Text3.Text = MAPIMessages1.MsgOrigDisplayName Text4.Text = MAPIMessages1.MsgNoteText End If

End Sub

Private Sub Command2_Click

If X + 1 > MAPIMessages1.MsgCount Then X = MAPIMessages1.MsgCount Else X = X + 1 MAPIMessages1.MsgIndex = X       Text1.Text = MAPIMessages1.RecipDisplayName Text2.Text = MAPIMessages1.MsgSubject Text3.Text = MAPIMessages1.MsgOrigDisplayName Text4.Text = MAPIMessages1.MsgNoteText End If

End Sub

Private Sub Command3_Click MAPISession1.SignOn MAPIMessages1.SessionID = MAPISession1.SessionID MAPIMessages1.Fetch If MAPIMessages1.MsgCount > 0 Then Text1.Text = MAPIMessages1.RecipDisplayName Text2.Text = MAPIMessages1.MsgSubject Text3.Text = MAPIMessages1.MsgOrigDisplayName Text4.Text = MAPIMessages1.MsgNoteText Command4.Enabled = True Else MsgBox "No messages to fetch" MAPISession1.SignOff Command4.Enabled = False End If

End Sub

Private Sub Command4_Click

MAPIMessages1.Compose MAPIMessages1.RecipDisplayName = Text1.Text MAPIMessages1.MsgSubject = Text2.Text MAPIMessages1.MsgNoteText = Text4.Text MAPIMessages1.ResolveName MAPIMessages1.Send

End Sub

Private Sub Command5_Click

MAPISession1.SignOff Unload Me

End Sub

</li></ol>

Additional query words: kbDSupport kbdse kbvbp500 kbVBp600 kbMAPI kbVBp

Keywords: kbhowto KB185171

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.