Microsoft KB Archive/922654

= A CDO-based program that runs reliably in Exchange Server 2003 logs errors when you test it in Application Verifier =

Article ID: 922654

Article Last Modified on 10/25/2007

-

APPLIES TO


 * Microsoft Exchange Server 2003 Enterprise Edition
 * Microsoft Exchange Server 2003 Standard Edition

-



SYMPTOMS
Consider the following scenario. You test a Collaboration Data Objects (CDO)-based program by using the basic tests in Microsoft Application Verifier. Additionally, you let the CDO-based program run in a debugger. The debugger may detect a problem in the implementation of the following CDO method:

MAPI.Session.Logoff

When the CDO-based program calls this method, the debugger logs errors that resemble the following:  Error 1

VERIFIER STOP 00000303 : pid 0xE60: NULL handle passed as parameter. A valid handle must be used.

 Error 2

VERIFIER STOP 00000300 : pid 0xE60: Invalid handle exception for current stack trace.



However, the CDO-based program may run reliably in Microsoft Exchange Server 2003. Additionally, the CDO-based program may run without errors outside Application Verifier and the debugger.



CAUSE
This problem occurs because a function in the CDO component does not have appropriate built-in error handling. Application Verifier recognizes and reports the issue in the implementation of the CDO component. However, the CDO programmer cannot locate and fix this issue in the program code of the CDO-based program. The errors that are described in the &quot;Symptoms&quot; section occur when one of the following conditions is true:  Condition 1

The Emsmdb32.dll file that is included together with Microsoft Exchange Server 2003 Service Pack 2 (SP2) is installed on the computer on which you run the tests. This file is installed when you install Exchange System Manager that is included with Exchange Server 2003 SP2. Condition 2

The Emsmdb32.dll file that is included together with the Microsoft Exchange Server MAPI Client and Collaboration Data Objects 1.2.1 Web release package is installed on the computer on which you run the tests.

The following file is available for download from the Microsoft Download Center:

Download the ExchangeMapiCdo.exe package now. Release Date: June 7, 2006

For more information about how to download Microsoft support files, click the following article number to view the article in the Microsoft Knowledge Base:

119591 How to obtain Microsoft support files from online services

Microsoft scanned this file for viruses. Microsoft used the most current virus-detection software that was available on the date that the file was posted. The file is stored on security-enhanced servers that help prevent any unauthorized changes to the file.



RESOLUTION
To resolve this problem when condition 1 is true, install the hotfix that is described in the &quot;Hotfix information&quot; section.

The problem that occurs when condition 2 is true will be fixed in the next release of the Microsoft Exchange Server MAPI Client and Collaboration Data Objects 1.2.1 Web release package.

Hotfix information
A supported hotfix is now available from Microsoft. However, this hotfix is intended to correct only the problem that is described in this article. Apply this hotfix only to systems that are experiencing this specific problem. This hotfix might receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next service pack that contains this hotfix.

To resolve this problem, submit a request to Microsoft Online Customer Services to obtain the hotfix. To submit an online request to obtain the hotfix, visit the following Microsoft Web site:

http://go.microsoft.com/?linkid=6294451

Note If additional issues occur or any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. To create a separate service request, visit the following Microsoft Web site:

http://support.microsoft.com/contactus/?ws=support

Hotfix installation information
This hotfix resolves this problem in the CDO component that is included in Exchange Server 2003 SP2. After you apply this hotfix, the errors are not logged when you run Application Verifier.

Prerequisites
You must install Exchange Server 2003 SP2 before you apply the hotfix. For more information, click the following article number to view the article in the Microsoft Knowledge Base:

836993 How to obtain the latest service packs for Exchange Server 2003

Restart requirement
You do not have to restart the computer after you apply the hotfix. However, the Microsoft Exchange System Attendant service and all dependent services will be restarted.

Hotfix replacement information
This hotfix does not replace any other hotfixes.

File information
The global version of this hotfix has the file attributes (or later file attributes) 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 item in Control Panel.



STATUS
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the &quot;Applies to&quot; section.

<div class="moreinformation_section">

Application Verifier
Application Verifier is a runtime verification tool for unmanaged code. Application Verifier helps you find subtle programming errors that can be difficult to identify when you use typical application testing. Run the Application Verifier tests on your code to identify errors in heaps, handles, and locks.

To download Application Verifier, visit the following Microsoft Web site:

http://www.microsoft.com/downloads/details.aspx?familyid=BD02C19C-1250-433C-8C1B-2619BD93B3A2&displaylang=en

<div class="references_section">