С помощью этой команды можно получить системную информацию об устройстве в виде текстовой строки. Используется блок параметров в формате структуры MCI_SYSINFO_PARMS : typedef struct tagMCI_SYSINFO_PARMS { DWORD dwCallback; LPSTR lpstrReturn; DWORD dwRetSize; DWORD dwNumber; UINT wDeviceType; UINT wReserved0; } MCI_SYSINFO_PARMS; typedef MCI_SYSINFO_PARMS FAR * LPMCI_SYSINFO_PARMS;
Поле lpstrReturn должно содержать дальний указатель на буфер, в который будет записана строка системной информации. Размер этого буфера следует передать через поле dwRetSize.
Поле dwNumber определяет положение устройства в таблице устройств MCI или в списке открытых устройств, если установлен флаг MCI_SYSINFO_OPEN. Поле wDeviceType определяет тип устройства. Поле wReserved0 зарезервировано.
Приведем набор флагов для команды MCI_INFO:
Флаг | Описание |
MCI_SYSINFO_INSTALLNAME | Требуется получить имя, которое было использовано в файле win.ini при установке драйвера устройства |
MCI_SYSINFO_NAME | Требуется получить имя устройства, соответствующего устройству с номером, заданным в поле dwNumber |
MCI_SYSINFO_OPEN | Определить имя открытого устройства или количество открытых устройств |
MCI_SYSINFO_QUANTITY | Определить количество устройств заданного типа, перечисленных в разделе [mci] файла system.ini. Если дополнительно установлен флаг MCI_SYSINFO_OPEN, возвращается количество открытых устройств |