FIX: MAPI_E_NOT_FOUND Returned Adding Personal Address Book
ID: Q183719
The information in this article applies to:
- Extended Messaging Application Programming Interface (MAPI), version 1.0
SYMPTOMS
You may experience any of the following problems:
- If a program calls the CoInitializeEx() routine with
COINIT_MULTITHREADED, and then attempts to use MAPI, the call to the
MAPIInitialize() routine may fail.
- If a program calls the MAPIInitialize() routine in one thread and the
MAPIUninitialize() routine in a different thread, the program may quit
unexpectedly.
- If you attempt to add a personal address book (PAB) using an alternate
profile provider, MAPI_E_NOT_FOUND may be returned.
CAUSE
These problems occur for the following reasons:
- When you attempt to use MAPI, MAPI calls the CoInitialize() routine
internally. It expects this routine to use the apartment threading
model, but under these circumstances, it has already been initialized
as free threaded. This causes the CoInitialize() call to fail with
RPC_E_CHANGED_MODE.
- When you call the MAPIInitialize() and MAPIUninitialize() routines in
different threads, the calls to the CoInitialize() and CoUninitialize()
routines may be mismatched.
- MAPI incorrectly returns MAPI_E_NOT_FOUND when you attempt to add a PAB
using an alternate profile provider.
STATUS
Microsoft has confirmed this to be a problem in the Extended Messaging
Application Programming Interface (MAPI) version 1.0.
This problem has been corrected in the latest U.S. Service Pack for
Microsoft Exchange Server version 5.5. For information about obtaining the
Service Pack, query on the following word in the Microsoft Knowledge Base
(without the spaces):
S E R V P A C K
Keywords : kbMsg kbMAPI100
Version : WINDOWS:1.0
Platform : WINDOWS
Issue type : kbbug
Solution Type : kbfix
Last Reviewed: September 27, 1998