Поделиться через


Метод IMDSPDevice3::D eviceIoControl (mswmdm.h)

Метод DeviceIoControl вызывает элемент управления ввод-выводом устройства.

Синтаксис

HRESULT DeviceIoControl(
  [in]  DWORD   dwIoControlCode,
  [in]  BYTE    *lpInBuffer,
  [in]  DWORD   nInBufferSize,
  [out] BYTE    *lpOutBuffer,
  [in]  LPDWORD pnOutBufferSize
);

Параметры

[in] dwIoControlCode

Код элемента управления вводом-выводом, отправляемый на устройство.

[in] lpInBuffer

Входной буфер, предоставляемый вызывающим приложением. Это значение может иметь значение NULL , если nInBufferSize равно нулю.

[in] nInBufferSize

Размер lpInBuffer в байтах.

[out] lpOutBuffer

Выходной буфер, предоставляемый вызывающим приложением.

[in] pnOutBufferSize

Размер lpOutBuffer в байтах.

Возвращаемое значение

Метод возвращает HRESULT. Все методы интерфейса в Windows Media диспетчер устройств могут возвращать любой из следующих классов кодов ошибок:

  • Стандартные коды ошибок COM
  • Коды ошибок Windows, преобразованные в значения HRESULT
  • Коды ошибок диспетчер устройств Windows Media
Подробный список возможных кодов ошибок см. в разделе Коды ошибок.

Комментарии

Этот метод обеспечивает частный режим обмена данными между приложением и поставщиком услуг. Затем поставщик услуг может обработать этот IOCTL, при необходимости изменить его и передать драйверу режима ядра.

По сравнению с IMDSPDevice::SendOpaqueCommand этот метод лучше согласуется с API DeviceIoControl для Windows, так как выходной буфер предоставляется вызывающим объектом. Кроме того, в отличие от IMDSPDevice::SendOpaqueCommand, этот метод не использует mac-проверка и является более эффективным.

Требования

Требование Значение
Целевая платформа Windows
Header mswmdm.h
Библиотека Mssachlp.lib

См. также раздел

Интерфейс IMDSPDevice3

IMDSPDevice::SendOpaqueCommand

IWMDMDevice3::D eviceIoControl