EVT_WDF_DEVICE_QUERY_REMOVE função de retorno de chamada (wdfdevice.h)
[Aplica-se a KMDF e UMDF]
A função de retorno de chamada de evento EvtDeviceQueryRemove de um driver determina se um dispositivo especificado pode ser interrompido e removido.
Sintaxe
EVT_WDF_DEVICE_QUERY_REMOVE EvtWdfDeviceQueryRemove;
NTSTATUS EvtWdfDeviceQueryRemove(
[in] WDFDEVICE Device
)
{...}
Parâmetros
[in] Device
Um identificador para um objeto de dispositivo de estrutura.
Retornar valor
Se o driver determinar que o dispositivo pode ser interrompido e removido, a função de retorno de chamada EvtDeviceQueryRemove deverá retornar STATUS_SUCCESS ou outro valor status para o qual NT_SUCCESS(status) é igual a TRUE. Caso contrário, ele deverá retornar um valor status para o qual NT_SUCCESS(status) é igual a FALSE. Não retorne STATUS_NOT_SUPPORTED.
Comentários
Para registrar uma função de retorno de chamada EvtDeviceQueryRemove , um driver deve chamar WdfDeviceInitSetPnpPowerEventCallbacks.
Se o dispositivo e o driver derem suporte à energia ociosa, o dispositivo poderá não estar em seu estado de trabalho quando a estrutura chamar a função de retorno de chamada EvtDeviceQueryRemove do driver. A função de retorno de chamada pode chamar WdfDeviceStopIdle para forçar o dispositivo em seu estado de trabalho (D0) e, em seguida, a função de retorno de chamada pode chamar WdfDeviceResumeIdle antes de retornar.
Para obter mais informações sobre a função de retorno de chamada EvtDeviceQueryRemove , consulte Manipulando solicitações para parar um dispositivo.
A estrutura não sincroniza a função de retorno de chamada EvtDeviceQueryRemove com outras funções de retorno de chamada de gerenciamento de energia e PnP. Para obter informações sobre como a estrutura sincroniza a execução de funções de retorno de chamada de evento de um driver, consulte Usando a sincronização automática.
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Universal |
Versão mínima do KMDF | 1.0 |
Versão mínima do UMDF | 2,0 |
Cabeçalho | wdfdevice.h (inclua Wdf.h) |
IRQL | PASSIVE_LEVEL |