Notice: This website is an unofficial Microsoft Knowledge Base (hereinafter KB) archive and is intended to provide a reliable access to deleted content from Microsoft KB. All KB articles are owned by Microsoft Corporation. Read full disclaimer for more details.

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


View products that this article applies to.

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.

↑ Back to the top


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 "Symptoms" 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.

↑ Back to the top


Resolution

To resolve this problem when condition 1 is true, install the hotfix that is described in the "Hotfix information" 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 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 software update that contains this hotfix.

If the hotfix is available for download, there is a "Hotfix download available" section at the top of this Knowledge Base article. If this section does not appear, contact Microsoft Customer Service and Support to obtain the hotfix.

Note If additional issues occur or if 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. For a complete list of Microsoft Customer Service and Support telephone numbers or to create a separate service request, visit the following Microsoft Web site: Note The "Hotfix download available" form displays the languages for which the hotfix is available. If you do not see your language, it is because a hotfix is not available for that language.

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.
File nameFile versionFile sizeDateTimePlatform
Emsmdb32.dll6.5.7651.38981,50426-Jul-200616:57x86

↑ Back to the top


Status

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

↑ Back to the top


More information

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:

↑ Back to the top


References

For more information about the terminology that is used to describe 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
For more information about the naming schema for Exchange software updates, click the following article number to view the article in the Microsoft Knowledge Base:
817903 New naming schema for Exchange Server software update packages

↑ Back to the top


Keywords: kbnosurvey, kbarchive, kbautohotfix, kbappdev, kbcode, kberrmsg, kbhotfixserver, kbqfe, kbfix, kbbug, kbdebug, KB922654

↑ Back to the top

Article Info
Article ID : 922654
Revision : 4
Created on : 1/15/2015
Published on : 1/15/2015
Exists online : False
Views : 237