EVT_WDF_DEVICE_QUERY_STOP fonction de rappel (wdfdevice.h)

[S’applique à KMDF et UMDF]

La fonction de rappel d’événement EvtDeviceQueryStop d’un pilote détermine si un appareil spécifié peut être arrêté afin que le gestionnaire PnP puisse redistribuer les ressources matérielles système.

Syntaxe

EVT_WDF_DEVICE_QUERY_STOP EvtWdfDeviceQueryStop;

NTSTATUS EvtWdfDeviceQueryStop(
  [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é, la fonction de rappel EvtDeviceQueryStop 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 EvtDeviceQueryStop , un pilote doit appeler WdfDeviceInitSetPnpPowerEventCallbacks.

Si le périphérique et le pilote prennent en charge la mise hors tension inactive, il se peut qu’il ne soit pas dans son état de fonctionnement lorsque l’infrastructure appelle la fonction de rappel EvtDeviceQueryStop 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 EvtDeviceQueryStop , consultez Gestion des demandes d’arrêt d’un appareil.

L’infrastructure ne synchronise pas la fonction de rappel EvtDeviceQueryStop 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

EvtDeviceQueryRemove