FIX: No Update When Delete All MESSAGE_SHOWADBOOK Recipients
ID: Q113896
|
The information in this article applies to:
-
Microsoft Visual Basic Professional Edition for Windows, version 3.0
SYMPTOMS
When using the MAPI message action MESSAGE_SHOWADBOOK (11) while composing
a message, you can select entries from the address book and those entries
are reflected in the recipients list. But if you then go into the address
book and delete all the entries, then when the dialog box terminates, it
will not update the recipients list. It leaves all prior entries
unmodified.
As a result, there's no way to detect if the user has used the dialog box
to delete all the entries on the "To:" line.
WORKAROUND
If you use MESSAGE_SENDDLG to bring up the MAPI compose dialog box, you can
click the address button to display the address book. If you delete all the
entries from the dialog here, the changes are reflected in the Send dialog
box. The problem only occurs when you bring up the Address book dialog box
directly.
STATUS
Microsoft has confirmed this to be a bug in the Microsoft products listed
at the beginning of this article. This problem has been corrected in Visual
Basic version 4.0.
MORE INFORMATION
Steps to Reproduce Problem
- Start a new project in Visual Basic. Form1 is created by default.
- Add two text boxes (Text1, Text2), a command button (Command1), a
MAPISession control (MAPISession1), and a MAPIMessages control
(MAPIMessages1) to Form1.
- Add the following constants to the general declarations section:
Const MESSAGE_SHOWADBOOK = 11
Const SESSION_SIGNON = 1
- Add the following code to your form in the appropriate event procedures:
Sub Form_Load ()
MAPISession1.Action = SESSION_SIGNON
MAPIMessages1.SessionID = MAPISession1.SessionID
End Sub
Sub Command1_Click ()
MAPIMessages1.MsgIndex = -1
MAPIMessages1.AddressEditFieldCount = 1
MAPIMessages1.Action = MESSAGE_SHOWADBOOK
Text1.Text = Str(MAPIMessages1.RecipCount)
Text2.Text = ""
For i = 0 To MAPIMessages1.RecipCount - 1
MAPIMessages1.RecipIndex = i
Text2.Text = Text2.Text & MAPIMessages1.RecipDisplayName & ";"
Next i
MAPIMessages1.RecipIndex = 0
End Sub
- Press the F5 key to run the program.
- Click the command button and select some entries in the address book.
You will see them in the text box.
- Now click the button again. Delete all the entries in the dialog box.
When you click OK and return, you'll see that it is as if nothing
happened in the dialog box. This diminishes the usability of the Address
dialog box.
Additional query words:
buglist3.00 3.00 fixlist4.00
Keywords :
Version : WINDOWS:3.0
Platform : WINDOWS
Issue type :