HOWTO: How to Use MAPI with Visual Basic
ID: Q185171
|
The information in this article applies to:
-
Microsoft Visual Basic Professional and Enterprise Editions for Windows, versions 5.0, 6.0
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"
- 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
Additional query words:
kbDSupport kbdse kbvbp500 kbVBp600 kbMAPI kbVBp
Keywords : kbGrpVBDB
Version :
Platform : WINDOWS
Issue type : kbhowto