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 ;