Partager via


IWDTFPNPActions2 ::EDTTryStopDevice, méthode (wdtfpnpaction.h)

Tente d’envoyer un événement IRP_MN_STOP_DEVICE à l’appareil cible.

Syntaxe

HRESULT EDTTryStopDevice(
  [out, retval] VARIANT_BOOL *pbSuccess
);

Paramètres

[out, retval] pbSuccess

True si l’opération réussit ; sinon, false.

Valeur de retour

Si cette méthode réussit, elle retourne S_OK. Sinon, elle retourne un HRESULT code d’erreur.

Remarques

Remarque la méthode IWDTFEnhancedDeviceTestSupportAction2 ::Enable doit être appelée pour l’appareil cible avant d’appeler cette méthode.
 
EDTTryStopDevice tente de déclencher un rééquilibrage de ressource PnP (par exemple, IRP_MN_STOP_DEVICE) sur la pile d’appareils cible. L’IRP Stop n’est pas garanti. D’autres pilotes de la pile peuvent échouer à l’événement IRP_MN_QUERY_STOP_DEVICE qui précède l’IRP Stop (entraînant un événement IRP_MN_CANCEL_STOP_DEVICE). En outre, le système peut optimiser s’il détecte que l’appareil cible n’utilise pas de ressources matérielles (par exemple, une souris USB) et envoie un IRP CancelStop à la place.

Si votre appareil n’utilise pas de ressources matérielles, mais que vous souhaitez toujours essayer de tester la façon dont les pilotes et les applications gèrent le rééquilibrage des ressources PnP, vous pouvez à la place exécuter le méthode EDTTryStopDevice sur un appareil parent, un grand-parent, etc., qui consomme des ressources matérielles. Par exemple, si votre appareil est une souris USB, vous pouvez exécuter EDTTryStopDevice sur le contrôleur USB parent à la place.

Exigences

Exigence Valeur
plateforme cible Bureau
d’en-tête wdtfpnpaction.h