Функция 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) |