Función WdfFdoInitSetFilter (wdffdo.h)
[Se aplica a KMDF y UMDF]
El método WdfFdoInitSetFilter identifica el controlador que realiza la llamada como un controlador de filtro de nivel superior o inferior para un dispositivo especificado.
Sintaxis
void WdfFdoInitSetFilter(
[in] PWDFDEVICE_INIT DeviceInit
);
Parámetros
[in] DeviceInit
Puntero a una estructura de WDFDEVICE_INIT que el controlador obtuvo de su función de devolución de llamada EvtDriverDeviceAdd .
Valor devuelto
None
Observaciones
Los controladores de filtro suelen procesar algunas solicitudes de E/S, pero simplemente pasan la mayoría de las solicitudes al siguiente controlador de la pila de controladores. Si el marco recibe una solicitud para uno de los dispositivos del controlador y si el controlador no ha creado una cola de E/S para recibir solicitudes que coincidan con el tipo de solicitud, la forma en que el marco procesa la solicitud depende de si el controlador ha llamado WdfFdoInitSetFilter:
- Si un controlador llama a WdfFdoInitSetFilter, el marco de trabajo del controlador reenvía la solicitud al siguiente controlador.
- Si un controlador no llama a WdfFdoInitSetFilter, el marco completa la solicitud con un valor de estado de STATUS_INVALID_DEVICE_REQUEST.
El controlador debe llamar a WdfFdoInitSetFilter antes de llamar a WdfDeviceCreate. Para obtener más información sobre cómo llamar a WdfDeviceCreate, vea Crear un objeto de dispositivo framework. Además, el controlador debe llamar a WdfFdoInitSetFilter antes de volver de su función de devolución de llamada EvtDriverDeviceAdd .
Para obtener más información sobre WdfFdoInitSetFilter, vea Crear objetos de dispositivo en un controlador de filtro, Crear colas de E/ S y reenviar solicitudes de E/S.
Ejemplos
En el ejemplo de código siguiente se identifica el controlador que llama como controlador de filtro para el dispositivo especificado.
WdfFdoInitSetFilter(DeviceInit);
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Universal |
Versión mínima de KMDF | 1.0 |
Versión mínima de UMDF | 2.0 |
Encabezado | wdffdo.h (incluya Wdf.h) |
Library | Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF) |
IRQL | PASSIVE_LEVEL |
Reglas de cumplimiento de DDI | DeviceInitAPI(kmdf), DriverCreate(kmdf), DrvAckIoStop(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |