Partager via


WdfDeviceSetStaticStopRemove, fonction (wdfdevice.h)

[S’applique à KMDF et UMDF]

La méthode WdfDeviceSetStaticStopRemove informe l’infrastructure si un appareil peut être arrêté et supprimé.

Syntaxe

VOID WdfDeviceSetStaticStopRemove(
  [in] WDFDEVICE Device,
  [in] BOOLEAN   Stoppable
);

Paramètres

[in] Device

Handle vers un objet d’appareil framework.

[in] Stoppable

Valeur booléenne qui indique si l’appareil spécifié peut être arrêté et supprimé. Si TRUE, l’appareil peut être arrêté et supprimé. Si FAUX, l’appareil ne peut pas être arrêté et supprimé.

Valeur de retour

Aucun

Remarques

Une vérification de bogue se produit si le pilote fournit un handle d’objet non valide.

Par défaut, un appareil peut être arrêté et supprimé. Par conséquent, un pilote appelle généralement WdfDeviceSetStaticStopRemove uniquement s’il doit définir temporairement le paramètre Stoppable sur FALSE. Par exemple, un pilote qui contrôle un enregistreur DVD peut appeler WdfDeviceSetStaticStopRemove avec stoppable défini sur FALSE avant de commencer à brûler un DVD. Une fois que le pilote a terminé de brûler le DVD, il appelle WdfDeviceSetStaticStopRemove à nouveau avec stoppable défini sur TRUE.

Si l’appareil de votre pilote prend en charge un fichier spécial (voir WdfDeviceSetSpecialFileSupport), l’infrastructure n’autorise pas l’arrêt ou la suppression de l’appareil. Dans ce cas, votre pilote n’a pas besoin d’appeler WdfDeviceSetStaticStopRemove .

Le pilote doit correspondre à chaque appel à WdfDeviceSetStaticStopRemove avec stoppable défini sur FALSE avec un appel à WdfDeviceSetStaticStopRemove avec stoppable défini sur TRUE.

L’appel WdfDeviceSetStaticStopRemove avec stoppable défini sur FALSE n’empêche pas l’infrastructure d’avertir le pilote si l’appareil est supprimé de manière inattendue (suppression inattendue).

Pour plus d’informations sur la façon d’empêcher le système d’exploitation d’arrêter un appareil, consultez gestion des demandes d’arrêt d’un appareil.

Exemples

L’exemple de code suivant informe l’infrastructure que l’appareil spécifié ne peut pas être arrêté et supprimé.

WdfDeviceSetStaticStopRemove(
                             device,
                             FALSE
                             );

Spécifications

Besoin Valeur
plateforme cible Universel
version minimale de KMDF 1.0
version minimale de UMDF 2.0
En-tête wdfdevice.h (include Wdf.h)
Bibliothèque Wdf01000.sys (KMDF) ; WUDFx02000.dll (UMDF)
IRQL <=DISPATCH_LEVEL
règles de conformité DDI DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)