Jump to content

MMIOM_GETCFENTRY

From EDM2

The MMIOM_GETCFENTRY message is sent to a Multimedia I/O (MMIO) procedure to request the Compound File Table of Contents (CTOC) entry data for a specific element. The target element is determined by the open `hmmio` file handle session context.

Syntax

rc = mmioSendMessage(hmmio, MMIOM_GETCFENTRY, (LONG)pMMCTOCEntry, lParam2);

Parameters

pmmioinfo (PMMIOINFO)
A pointer to an MMIOINFO data structure maintaining the current state of the open file.
usMsg (USHORT)
The message identifier, set to `MMIOM_GETCFENTRY`.
lParam1 (LONG)
A pointer to a caller-allocated output buffer structured as an MMCTOCENTRY structure. The I/O procedure populates this target block with the matched file element meta-record.
lParam2 (LONG)
This parameter is not used.

Return Value

rc (ULONG)
Return codes indicating success or the type of failure:
  • MMIO_CF_SUCCESS: The target user buffer was updated successfully with the requested CTOC element metadata.
  • MMIO_CF_FAILURE: An error occurred or the entry was missing; the user buffer was not updated.

Remarks

  • **Buffer Allocation Constraints**: The MMCTOCENTRY structure contains variable-length components, such as the element string name field (`szName`) and possible system or format-specific extra data tracking blocks (`szExtra`). The application must allocate a large enough memory buffer block ahead of time to accommodate the dynamic footprint of these trailer structures safely without triggering memory corruption errors.
  • **Metadata Exhumation**: This request exposes the precise low-level layout details of the element sub-track from within the parent container catalog registry. The resulting data chunk reveals its physical data offset location within the composite byte stream, its exact compressed byte length footprint, and attributes.

Related Functions

Related Messages