CDO cannot access some properties (268753)



The information in this article applies to:

  • Microsoft Exchange Server 5.5
  • Microsoft Outlook 2000
  • Microsoft Outlook 98

This article was previously published under Q268753

SYMPTOMS

When some properties are accessed through the Fields collection, Collaboration Data Objects (CDO) may return the MAPI_E_NOT_FOUND error (&H8004010F), even though the properties exist and are accessible through the Extended Messaging Application Programming Interface (MAPI).

CAUSE

CDO uses a local cache of properties on objects. If a property is not found in the cache, CDO does not pass on the request to the underlying provider. Instead, it returns MAPI_E_NOT_FOUND.

RESOLUTION

Use Extended MAPI to retrieve the property.

Note Because Extended MAPI can only be used from Microsoft Visual C++, you will need to write a dynamic-link library (DLL) that encapsulates the calls if the property is needed from Microsoft Visual Basic.

MORE INFORMATION

The cache that CDO uses is filled through a call to the MAPI GetProps function with a NULL parameter. Although this call is designed to request all properties on an object, the properties that are actually returned are at the discretion of the underlying provider. In particular, secure properties, whose property tag lies in the range PROP_ID_SECURE_MIN (0x6600) to PROP_ID_SECURE_MAX (0x67FF), are rarely returned in this call. Many other properties that are not in this range, and the values of which may be expensive to compute or to access, may also be left out.

This is not a problem in Extended MAPI, where any property may be individually requested.

Modification Type:MajorLast Reviewed:2/28/2006
Keywords:kbprb KB268753