Microsoft KB Archive/113896

= FIX: No Update When Delete All MESSAGE_SHOWADBOOK Recipients =

Article ID: 113896

Article Last Modified on 1/9/2003

-

APPLIES TO


 * Microsoft Visual Basic 3.0 Professional Edition

-



This article was previously published under Q113896



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.



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.</li> 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.</li></ol>

Additional query words: buglist3.00 3.00 fixlist4.00

Keywords: kbbug kbfix KB113896

-

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

© Microsoft Corporation. All rights reserved.