Exchange 2000 MAPI address book provider cannot connect to a different global catalog server if the current global catalog server is unavailable (823719)



The information in this article applies to:

  • Microsoft Exchange 2000 Server

Important This article contains information about modifying the registry. Before you modify the registry, make sure to back it up and make sure that you understand how to restore the registry if a problem occurs. For information about how to back up, restore, and edit the registry, click the following article number to view the article in the Microsoft Knowledge Base:

256986 Description of the Microsoft Windows Registry

SYMPTOMS

Your MAPI program stops responding for approximately 1 to 2 minutes. You may receive an error message that is similar to the following:
MAPI_E_NOT_FOUND

CAUSE

This problem may occur if all the following conditions are true:
  • Your MAPI program connects to a Microsoft Exchange 2000 Server mailbox store.
  • Your MAPI program runs on either the Exchange 2000 server or on a member server that has access to Exchange 2000 Server MAPI components.
  • Your MAPI program uses the MAPI address book provider that is included with Exchange 2000.
  • Global catalog referral is enabled on the Exchange 2000 server.
  • The global catalog server that your MAPI program points to becomes unavailable.
If global catalog referral is enabled on the Exchange 2000 server, when your MAPI program first logs on to a mailbox, the referral service points the MAPI program to a global catalog server. This procedure occurs during the MapiLogonEx process. The MAPI program uses the global catalog server for name resolution and to retrieve user attributes. If the global catalog server becomes unavailable during the session, the MAPI program may stop responding for approximately 1 to 2 minutes. During this time, any calls that are made to the global catalog server may return an error. This problem occurs even when there are other global catalog servers that are available on the network.

Unlike Microsoft Outlook 2002 and Microsoft Office Outlook 2003, the MAPI address book provider that is included with Exchange 2000 cannot resubmit a query to the Exchange server for a different global catalog server when the current global catalog server is unavailable.

RESOLUTION

A supported hotfix is now available from Microsoft, but it is only intended to correct the problem that is described in this article. Only apply it to systems that are experiencing this specific problem. This hotfix may receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next Exchange 2000 Server service pack that contains this hotfix.

To resolve this problem immediately, contact Microsoft Product Support Services to obtain the hotfix. For a complete list of Microsoft Product Support Services telephone numbers and information about support costs, visit the following Microsoft Web site:Note In special cases, charges that are ordinarily incurred for support calls may be canceled if a Microsoft Support Professional determines that a specific update will resolve your problem. The usual support costs will apply to additional support questions and issues that do not qualify for the specific update in question.

The English version of this hotfix has the file attributes (or later) that are listed in the following table. The dates and times for these files are listed in coordinated universal time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time tool in Control Panel.
   Date         Time   Version            Size    File name
   --------------------------------------------------------------
   25-Sep-2003  04:30  6.0.6515.0        167,936  Emsabp32.dll 
				
Note Because of file dependencies, this update requires Exchange 2000 Server Service Pack 3 (SP3). For additional information, click the following article number to view the article in the Microsoft Knowledge Base:

301378 How to obtain the latest Exchange 2000 Server service pack

WORKAROUND

To work around this problem, restart your MAPI program. When you restart your MAPI program, your program is pointed to an available global catalog server during the logon process.

STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section of this article.

MORE INFORMATION

After you install the hotfix, you must edit the registry to enable the hotfix for your MAPI user profile.

Note You must update the registry for each user profile that you want the hotfix to apply to.

Warning If you use Registry Editor incorrectly, you may cause serious problems that may require you to reinstall your operating system. Microsoft cannot guarantee that you can solve problems that result from using Registry Editor incorrectly. Use Registry Editor at your own risk.
  1. Determine the name of your MAPI user profile.
  2. Click Start, click Run, in the Open box type regedt32, and then click OK.
  3. Locate and then click the following registry subkey:

    HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows Messaging Subsystem\Profiles

  4. Expand the Your_Profile subkey, where Your_Profile is the name of your user profile.
  5. Click the subkey that starts with dca, for example dca740c8c042101ab4b908002b2fe182.
  6. On the Edit menu, click Add Value.
  7. In the Value Name box, type 00036639.
  8. In the Data Type box, click REG_BINARY, and then click OK.
  9. In the Data box, type 01 00 00 00, and then click OK. (You do not have to type the spaces. The spaces appear in the value after you click OK.)

    Note This registry setting permits the Exchange MAPI address book provider to connect to a new global catalog server when the existing global catalog server is unavailable. After the switch to a new global catalog server occurs, the MAPI call fails with the status MAPI_E_END_OF_SESSION. This causes the MAPI program to retry the call. There is a delay of 30 to 50 seconds while the switch to the new global catalog server occurs.
  10. On the Edit menu, click Add Value.
  11. In the Value Name box, type 0003663A.
  12. In the Data Type box, click REG_BINARY, and then click OK.
  13. In the Data box, type 14 00 00 00, and then click OK. (You do not have to type the spaces. The spaces appear in the value after you click OK.)

    Notes
    • After you configure this registry setting, if your program uses multiple threads to connect and use the Exchange MAPI address book provider, the threads will time out as specified in the registry value. In this example, the threads will time out after 20 seconds if the thread cannot access the global catalog server. The returned error code is MAPI_E_USER_CANCEL.
    • For newly created profiles, MAPI will not be able to reconnect until it has connected at least one time and the PR_PROFILE_SERVER_VERSION property is set in the MAPI profile. If your program creates a new MAPI profile and must use the reconnection feature on the first logon, you should set the PR_PROFILE_SERVER_VERSION property to 3000 or greater on the global profile section before you log on.
For additional information about the terminology that is used for Microsoft software updates, click the following article number to view the article in the Microsoft Knowledge Base:

824684 Description of the standard terminology that is used to describe Microsoft software updates


Modification Type:MinorLast Reviewed:10/3/2005
Keywords:kbHotfixServer kbQFE kbQFE kbfix kbExchange2000preSP4fix kbbug KB823719 kbAudITPRO