Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
[Применимо только к KMDF]
Метод WdfPdoInitAssignRawDevice указывает, что вызывающий драйвер может поддерживать указанное устройство в необработанном режиме.
Синтаксис
NTSTATUS WdfPdoInitAssignRawDevice(
[in] PWDFDEVICE_INIT DeviceInit,
[in] const GUID *DeviceClassGuid
);
Параметры
[in] DeviceInit
Указатель на структуру WDFDEVICE_INIT.
[in] DeviceClassGuid
Указатель на GUID, определяющий класс установки устройства .
Примечание Всегда следует указывать GUID пользовательского класса. Не следует указывать существующий GUID класса. Если указать существующий GUID класса, другие драйверы, которые пытаются указать, что существующий GUID класса может завершиться ошибкой установки или установки с неправильными параметрами безопасности.
Дополнительные сведения см. в следующем разделе "Примечания".
Возвращаемое значение
Если операция выполнена успешно, метод возвращает STATUS_SUCCESS. В противном случае возвращается STATUS_INVALID_PARAMETER.
Замечания
Драйвер должен вызывать WdfPdoInitAssignRawDevice перед вызовом WdfDeviceCreate. Дополнительные сведения о вызове WdfDeviceCreateсм. в создании объекта устройства Framework.
Реестр может содержать значения, переопределяющие значения, заданные драйвером при вызове WdfDeviceInitAssignSDDLString, WdfDeviceInitSetDeviceType, WdfDeviceInitSetCharacteristicsи WdfDeviceInitSetExclusive. Параметр WdfPdoInitAssignRawDevice метода DeviceClassGuid указывает GUID, определяющий раздел реестра, содержащий переопределяемые значения. Параметр DeviceClassGuid определяет только раздел реестра и фактически не задает класс установки устройства для устройства. Раздел INF Version в INF-файле устройства и inf-файле драйвера задает класс установки устройства. Как правило, идентификатор GUID параметра DeviceClassGuid должен соответствовать GUID, который раздел inf version.
Дополнительные сведения об использовании реестра см. в разделе Настройка свойств реестра объектов устройств после установки.
Примеры
Следующий фрагмент кода из примера драйвера kmdf_enumswitches указывает, что драйвер может поддерживать указанное устройство в необработанном режиме.
NTSTATUS status;
DEFINE_GUID(GUID_DEVCLASS_MYUNIQUEID,
0xf149fe88, 0x f6cc, 0x47e3, 0x85, 0x94, 0xe2, 0xaa, 0xb6, 0xe0, 0x3b, 0xdf);
status = WdfPdoInitAssignRawDevice(
pDeviceInit,
&GUID_DEVCLASS_MYUNIQUEID
);
Требования
Требование | Ценность |
---|---|
целевая платформа | универсальный |
минимальная версия KMDF | 1.0 |
Заголовок | wdfpdo.h (включая Wdf.h) |
Библиотека | Wdf01000.sys (см. управление версиями библиотеки Платформы).) |
IRQL | PASSIVE_LEVEL |
правил соответствия DDI | ChildDeviceInitAPI(kmdf), DriverCreate(kmdf), InitFreeDeviceCallback(kmdf), InitFreeDeviceCreate(kmdf), InitFreeNull(kmdf), KmdfIrql (kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), PdoDeviceInitAPI(kmdf), PdoInitFreeDeviceCallback(kmdf), PdoInitFreeDeviceCreate(kmdf) |