Función WdfDeviceInitSetPowerPageable (wdfdevice.h)
[Solo se aplica a KMDF]
El método WdfDeviceInitSetPowerPageable informa al administrador de energía de que el controlador debe poder tener acceso a datos paginables mientras el sistema realiza la transición entre un estado de suspensión y el estado de trabajo (S0).
Sintaxis
void WdfDeviceInitSetPowerPageable(
[in] PWDFDEVICE_INIT DeviceInit
);
Parámetros
[in] DeviceInit
Puntero proporcionado por el autor de la llamada a una estructura WDFDEVICE_INIT .
Valor devuelto
None
Observaciones
Si el controlador de función o el controlador de bus llama a WdfDeviceInitSetPowerPageable, el sistema garantiza que el dispositivo del archivo de paginación se encuentra en su estado de trabajo (D0) cuando el dispositivo del controlador entra en un estado de baja potencia o vuelve a su estado de trabajo. Esto permite al controlador acceder a archivos, el registro y el grupo paginado durante las transiciones de energía del dispositivo.
De forma predeterminada, el marco permite el acceso a datos paginables para los controladores de función. El marco usa la configuración del dispositivo primario para cada dispositivo secundario que un controlador de bus enumera, a menos que el controlador de bus llame a WdfDeviceInitSetPowerPageable o WdfDeviceInitSetPowerNotPageable para el dispositivo secundario. Si escribe un controlador de bus que llama a WdfDeviceInitSetPowerPageable para un dispositivo secundario, ningún controlador de la pila del dispositivo secundario puede llamar a WdfDeviceInitSetPowerNotPageable.
Llamar a WdfDeviceInitSetPowerPageable o WdfDeviceInitSetPowerNotPageable desde un controlador de filtro no tiene ningún efecto. El marco de trabajo usa la configuración que especifica el controlador siguiente inferior.
La mayoría de los controladores no necesitan llamar a WdfDeviceInitSetPowerPageable o WdfDeviceInitSetPowerNotPageable. En su lugar, debe permitir que el marco use la configuración predeterminada adecuada para el controlador. Sin embargo, el controlador debe llamar a WdfDeviceInitSetPowerNotPageable si el controlador forma parte de una pila de controladores que no debe tener acceso a datos paginables durante las transiciones de energía (como la pila de almacenamiento o la pila de vídeo), o si el controlador es un controlador de bus que enumera los dispositivos que pueden ser dispositivos de almacenamiento o vídeo.
Si el controlador llama a WdfDeviceInitSetPowerInrush, no debe llamar a WdfDeviceInitSetPowerPageable.
El controlador debe llamar a WdfDeviceInitSetPowerPageable antes de llamar a WdfDeviceCreate.
Para obtener más información sobre cómo llamar a WdfDeviceCreate, vea Creating a Framework Device Object.
Ejemplos
En el ejemplo de código siguiente se informa al administrador de energía de que un controlador debe poder acceder a los datos paginables mientras el sistema realiza la transición entre un estado de suspensión y el estado de trabajo (S0).
WdfDeviceInitSetPowerPageable(DeviceInit);
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Universal |
Versión mínima de KMDF | 1.0 |
Encabezado | wdfdevice.h (incluir Wdf.h) |
Library | Wdf01000.sys (consulte Control de versiones de la biblioteca de marcos). |
IRQL | <= DISPATCH_LEVEL |
Reglas de cumplimiento de DDI | ChildDeviceInitAPI(kmdf), DeviceInitAPI(kmdf), DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), PdoDeviceInitAPI(kmdf) |