Função WdfDeviceInitSetPowerPageable (wdfdevice.h)
[Aplica-se somente ao KMDF]
O método WdfDeviceInitSetPowerPageable informa ao power manager que o driver deve ser capaz de acessar dados de pagináveis enquanto o sistema está fazendo a transição entre um estado de suspensão e o estado de trabalho (S0).
Sintaxe
void WdfDeviceInitSetPowerPageable(
[in] PWDFDEVICE_INIT DeviceInit
);
Parâmetros
[in] DeviceInit
Um ponteiro fornecido pelo chamador para uma estrutura de WDFDEVICE_INIT.
Valor de retorno
Nenhum
Observações
Se o driver de função ou o driver de ônibus chamar WdfDeviceInitSetPowerPageable, o sistema garantirá que o dispositivo do arquivo de paginação esteja em seu estado de trabalho (D0) quando o dispositivo do driver entrar em um estado de baixa potência ou retornar ao seu estado de trabalho. Isso permite que o driver acesse arquivos, o registro e o pool de páginas durante as transições de energia do dispositivo.
Por padrão, a estrutura permite o acesso a dados pagináveis para drivers de função. A estrutura usa a configuração do dispositivo pai para cada dispositivo filho que um motorista de ônibus enumera, a menos que o motorista do ônibus chame WdfDeviceInitSetPowerPageable ou WdfDeviceInitSetPowerNotPageable para o dispositivo filho. Se você escrever um driver de ônibus que chama WdfDeviceInitSetPowerPageable para um dispositivo filho, nenhum drivers na pilha do dispositivo filho poderá chamar WdfDeviceInitSetPowerNotPageable.
Chamar WdfDeviceInitSetPowerPageable ou WdfDeviceInitSetPowerNotPageable de um driver de filtro não tem efeito. A estrutura usa a configuração especificada pelo driver inferior seguinte.
A maioria dos drivers não precisa chamar WdfDeviceInitSetPowerPageable ou WdfDeviceInitSetPowerNotPageable. Em vez disso, você deve permitir que a estrutura use a configuração padrão apropriada para o driver. No entanto, seu driver deve chamar WdfDeviceInitSetPowerNotPageable se o driver fizer parte de uma pilha de driver que não deve acessar dados pagináveis durante transições de energia (como a pilha de armazenamento ou a pilha de vídeo) ou se o driver for um driver de ônibus que enumera dispositivos que podem ser dispositivos de armazenamento ou vídeo.
Se o driver chamar WdfDeviceInitSetPowerInrush, ele não deverá chamar WdfDeviceInitSetPowerPageable.
O driver deve chamar WdfDeviceInitSetPowerPageable antes de chamar WdfDeviceCreate.
Para obter mais informações sobre como chamar WdfDeviceCreate, consulte Criando um objeto de dispositivo framework.
Exemplos
O exemplo de código a seguir informa ao power manager que um driver deve ser capaz de acessar dados pagináveis enquanto o sistema está fazendo a transição entre um estado de suspensão e o estado de trabalho (S0).
WdfDeviceInitSetPowerPageable(DeviceInit);
Requisitos
Requisito | Valor |
---|---|
da Plataforma de Destino | Universal |
versão mínima do KMDF | 1.0 |
cabeçalho | wdfdevice.h (inclua Wdf.h) |
biblioteca | Wdf01000.sys (consulte o Controle de Versão da Biblioteca da Estrutura.) |
IRQL | <= DISPATCH_LEVEL |
regras de conformidade de DDI | ChildDeviceInitAPI(kmdf), DeviceInitAPI(kmdf), DriverCreate(kmdf), KmdfIrql(kmdf), kmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), PdoDeviceInitAPI(kmdf) |