The fields of the data structure for a media control interface message are always the size of ULONGs. The number of fields in the structure depends on the particular message. The first field must be reserved for a handle to a window function used with the MCI_NOTIFY flag. The next fields in the data structure depend on the type of data returned for the message.
typedef struct _MCI_SAVE_PARMS {
HWND hwndCallback; /* PM window handle for MCI notify message */
PSZ pszFileName; /* File name to save data to */
} MCI_SAVE_PARMS;
typedef MCI_SAVE_PARMS *PMCI_SAVE_PARMS;
typedef struct _MCI_GETDEVCAPS_PARMS {
HWND hwndCallback; /* PM window handle for MCI notify message */
ULONG ulReturn; /* Return field */
ULONG ulItem; /* Item field for GETDEVCAPS item to query */
USHORT usMessage; /* Field to hold MCI message to query */
USHORT usReserved0; /* Reserved field */
} MCI_GETDEVCAPS_PARMS;
typedef MCI_GETDEVCAPS_PARMS * PMCI_GETDEVCAPS_PARMS;
typedef struct _MCI_INFO_PARMS {
HWND hwndCallback; /* PM window handle for MCI notify message */
PSZ pszReturn; /* Pointer to return buffer */
ULONG ulRetSize; /* Return buffer size */
} MCI_INFO_PARMS;
typedef MCI_INFO_PARMS *PMCI_INFO_PARMS;
typedef struct _MCI_VID_RECT_PARMS {
HWND hwndCallback; /* PM window handle for MCI notify message */
RECTL rc; /* rectangle array specifying the offset */
/* and size of a rectangle */
} MCI_VID_RECT_PARMS;