This structure is passed from MDM to the MCD on the MCI_OPEN message. The ulParam2 field of this structure contains the pParam2 passed to MDM by the application.
typedef struct _MMDRV_OPEN_PARMS {
HWND hwndCallback; /* Window handle for callback. */
USHORT usDeviceID; /* The device ID assigned to this instance. */
USHORT usDeviceType; /* Device type number. */
USHORT usDeviceOrd; /* Device ordinal number. */
PVOID pInstance; /* Pointer to the instance structure allocated. */
CHAR szDevDLLName[260]; /* Character string. */
PSZ pszElementName; /* Typically a file name or NULL. */
USHORT usDevParmLen; /* Device parameters data block length. */
PVOID pDevParm; /* Device parameters data block. */
USHORT usResourceUnitsRequired; /* Number of resource units. */
USHORT usResourceClass; /* Resource class. */
USHORT usResourcePriority; /* Resource priority. */
ULONG ulParam2; /* Pointer to MCI_OPEN structure. */
} MMDRV_OPEN_PARMS;
typedef MMDRV _ OPEN _ PARMS * PMMDRV _ OPEN _ PARMS ;