EVT_WDF_DEVICE_QUERY_REMOVE fonction de rappel (wdfdevice.h)

[S’applique à KMDF et UMDF]

La fonction de rappel d’événement EvtDeviceQueryRemove d’un pilote détermine si un appareil spécifié peut être arrêté et supprimé.

Syntaxe

EVT_WDF_DEVICE_QUERY_REMOVE EvtWdfDeviceQueryRemove;

NTSTATUS EvtWdfDeviceQueryRemove(
  [in] WDFDEVICE Device
)
{...}

Paramètres

[in] Device

Handle pour un objet d’appareil d’infrastructure.

Valeur retournée

Si le pilote détermine que l’appareil peut être arrêté et supprimé, la fonction de rappel EvtDeviceQueryRemove doit retourner STATUS_SUCCESS ou une autre valeur de status pour laquelle NT_SUCCESS(status) est égal à TRUE. Sinon, il doit retourner une valeur status pour laquelle NT_SUCCESS(status) est égal à FALSE. Ne retournez pas STATUS_NOT_SUPPORTED.

Remarques

Pour inscrire une fonction de rappel EvtDeviceQueryRemove , un pilote doit appeler WdfDeviceInitSetPnpPowerEventCallbacks.

Si le périphérique et le pilote prennent en charge l’inactivité, il se peut qu’il ne soit pas dans son état de fonctionnement lorsque l’infrastructure appelle la fonction de rappel EvtDeviceQueryRemove du pilote. La fonction de rappel peut appeler WdfDeviceStopIdle pour forcer l’appareil à entrer dans son état de fonctionnement (D0), puis la fonction de rappel peut appeler WdfDeviceResumeIdle avant de retourner.

Pour plus d’informations sur la fonction de rappel EvtDeviceQueryRemove , consultez Gestion des demandes d’arrêt d’un appareil.

L’infrastructure ne synchronise pas la fonction de rappel EvtDeviceQueryRemove avec d’autres fonctions de rappel PnP et de gestion de l’alimentation. Pour plus d’informations sur la façon dont l’infrastructure synchronise l’exécution des fonctions de rappel d’événements d’un pilote, consultez Utilisation de la synchronisation automatique.

Configuration requise

Condition requise Valeur
Plateforme cible Universal
Version KMDF minimale 1.0
Version UMDF minimale 2.0
En-tête wdfdevice.h (inclure Wdf.h)
IRQL PASSIVE_LEVEL

Voir aussi

EvtDeviceQueryStop