Processing a RopGetHierarchyTable ROP Request

When the server receives a RopGetHierarchyTable ROP request buffer ([MS-OXCROPS] section from the client, the server parses the buffer. The server responds with a RopGetHierarchyTable ROP response buffer. For details about how the server parses buffers and processes ROPs, see [MS-OXCROPS] section For details about how the server formats buffers for the response, see [MS-OXCROPS] section

The server returns a hierarchy table on which table operations can be performed. For details about Table objects and table operations, see [MS-OXCTABL]. The Table object that is returned MUST allow access to the subfolders of the Folder object on which the RopGetHierarchyTable ROP is executed.

The particular information that the server returns in the hierarchy table is determined by the bit settings in the TableFlags field of the RopGetHierarchyTable ROP request buffer, as specified in section If the DeferredErrors bit of the TableFlags field is set, the server can return, at its discretion, the ROP response buffer immediately, possibly before the ROP execution is complete. If the server has not completed execution of the ROP, the values of the ReturnValue and the RowCount fields of the ROP response buffer, as specified in section, might not be accurate.

If the client sets an invalid bit in the TableFlags field, the server SHOULD<21> fail the ROP with an error code of ecNotSupported (0x80040102).

The following specific error code applies to this ROP. For more details about ROP errors, see [MS-OXCDATA] section 2.4.

Error code name





The object that this ROP was called on is not a Folder object.