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


Функция WdfDeviceInitSetIoType (wdfdevice.h)

[Применимо к KMDF и UMDF]

Метод WdfDeviceInitSetIoType задает метод или предпочтение того, как драйвер получит доступ к буферам данных, включенным в запросы на чтение и запись для указанного устройства.

Синтаксис

void WdfDeviceInitSetIoType(
  [in] PWDFDEVICE_INIT    DeviceInit,
  [in] WDF_DEVICE_IO_TYPE IoType
);

Параметры

[in] DeviceInit

Указатель на структуру WDFDEVICE_INIT.

[in] IoType

Перечислитель WDF_DEVICE_IO_TYPEтипа, определяющий метод, используемый драйвером для доступа к буферам данных, которые он получает для запросов на чтение и запись.

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

Никакой

Замечания

KMDF Если вы пишете новый драйвер с помощью KMDF версии 1.13 или более поздней, вместо этого следует использовать WdfDeviceInitSetIoTypeEx. Вызов WdfDeviceInitSetIoType из драйвера фильтра KMDF не действует. Для драйверов фильтров платформа использует тип ввода-вывода, указанный следующим драйвером в стеке драйверов.

UMDF Если вы преобразуете драйвер KMDF, вызывающий WdfDeviceInitSetIoType в UMDF версии 2.0 или более поздней, преобразованный драйвер может продолжать вызывать WdfDeviceInitSetIoType без проблем. Однако если вы пишете совершенно новый драйвер с помощью UMDF версии 2.0 или более поздней, вместо этого следует использовать WdfDeviceInitSetIoTypeEx.

Если драйвер вызывает WdfDeviceInitSetIoType, перед вызовом WdfDeviceCreate. Дополнительные сведения о вызове WdfDeviceCreateсм. в создании объекта устройства Framework.

Если драйвер не вызывает WdfDeviceInitSetIoType, платформа устанавливает метод доступа к буферу драйвера WdfDeviceIoBufferedдля указанного устройства.

Дополнительные сведения о методах буферного доступа см. в разделе доступ к буферам данных.

Примеры

В следующем примере кода указывается, что драйвер будет использовать прямой метод ввода-вывода при доступе к устройству.

WdfDeviceInitSetIoType(
                       DeviceInit,
                       WdfDeviceIoDirect
                       );

Требования

Требование Ценность
целевая платформа Всеобщий
минимальная версия KMDF 1.0
минимальная версия UMDF 2.0
заголовка wdfdevice.h (include Wdf.h)
библиотеки Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF)
IRQL <= DISPATCH_LEVEL
правил соответствия DDI ChildDeviceInitAPI(kmdf), ControlDeviceInitAPI(kmdf), DeviceInitAPI(kmdf), DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), PdoDeviceInitAPI(kmdf)

См. также

IWDFDeviceInitialize2::SetIoTypePreference

WDF_DEVICE_IO_TYPE

WdfDeviceInitSetIoTypeEx