2.4.2 Property Error Codes

Property errors appear in two different contexts. When an error occurs in getting a property of an object, or a column of a table, from the server, then the type of the returned property value is ErrorCode (0x000A) and the property value itself is the error code. When an error occurs in setting a property of an object on the server, the RopSetProperties ROP ([MS-OXCROPS] section 2.2.8.6) returns an array of PropertyProblem structures, as specified in section 2.7, that includes the error code.

Most property error codes are also used as general error codes, but they have a special meaning in the context of a property operation.

Property error codes are presented in the following table.

Error code name

Description (alternate names)

Numeric value (hex)

NotEnoughMemory

On get, indicates that the property or column value is too large to be retrieved by the request, and the property value needs to be accessed with the RopOpenStream ROP ([MS-OXCROPS] section 2.2.9.1).

(E_NOMEMORY, MAPI_E_NOT_ENOUGH_MEMORY)

0x8007000E,

%x0E.00.07.80

NotFound

On get, indicates that the property or column has no value for this object.

(MAPI_E_NOT_FOUND)

0x8004010F,

%x0F.01.04.80

BadValue

On set, indicates that the property value is not acceptable to the server.

(MAPI_E_BAD_VALUE, ecPropBadValue)

0x80040301,

%x01.03.04.80

InvalidType

On get or set, indicates that the data type passed with the property or column is undefined.

(MAPI_E_INVALID_TYPE, ecInvalidType)

0x80040302,

%x02.03.04.80

UnsupportedType

On get or set, indicates that the data type passed with the property or column is not acceptable to the server.

(MAPI_E_TYPE_NO_SUPPORT, ecTypeNotSupported)

0x80040303,

%x03.03.04.80

UnexpectedType

On get or set, indicates that the data type passed with the property or column is not the type expected by the server.

(MAPI_E_UNEXPECTED_TYPE, ecPropType)

0x80040304,

%x04.03.04.80

TooBig

Indicates that the result set of the operation is too big for the server to return.

(MAPI_E_TOO_BIG, ecTooBig)

0x80040305,

%x05.03.04.80

DeclineCopy

On a copy operation, indicates that the server cannot copy the object, possibly because the source and destination are on different types of servers, and the server will delegate the copying to client code.

(MAPI_E_DECLINE_COPY)

0x80040306,

%x06.03.04.80

UnexpectedId

On get or set, indicates that the server does not support property IDs in this range, usually the named property ID range (from 0x8000 through 0xFFFF).

(MAPI_E_UNEXPECTED_ID)

0x80040307,

%x07.03.04.80