WdfDeviceAddRemovalRelationsPhysicalDevice, fonction (wdfdevice.h)
[S’applique uniquement à KMDF]
La méthode WdfDeviceAddRemovalRelationsPhysicalDevice indique qu’un appareil spécifié doit être supprimé lorsqu’un autre appareil spécifié est supprimé.
Syntaxe
NTSTATUS WdfDeviceAddRemovalRelationsPhysicalDevice(
[in] WDFDEVICE Device,
[in] PDEVICE_OBJECT PhysicalDevice
);
Paramètres
[in] Device
Handle vers un objet d’appareil framework.
[in] PhysicalDevice
Pointeur vers une structure DEVICE_OBJECT fournie par l’appelant qui représente un objet d’appareil physique (PDO).
Valeur de retour
Si l’opération réussit, WdfDeviceAddRemovalRelationsPhysicalDevice retourne STATUS_SUCCESS. Les valeurs de retour supplémentaires sont les suivantes :
Retourner le code | Description |
---|---|
|
PhysicalDevice est NULL. |
|
Échec de l’allocation de mémoire. |
La méthode peut retourner d’autres valeurs NTSTATUS .
Une vérification de bogue se produit si le pilote fournit un handle d’objet non valide.
Remarques
Le paramètre PhysicalDevice pointe vers un PDO d’un périphérique dont les pilotes doivent être supprimés lorsque les pilotes pour appareil sont supprimés. En règle générale, les deux appareils sont contrôlés par le pilote appelant. Ne signalez pas les appareils enfants de l’objet d’appareil spécifié dans Appareil, car lorsque le gestionnaire Plug-and-Play supprime un appareil parent, il supprime également les enfants de l’appareil.
Votre pilote peut appeler WdfDeviceAddRemovalRelationsPhysicalDevice plusieurs fois pour ajouter plusieurs appareils à la liste des appareils qui doivent être supprimés lorsque Appareil est supprimé. L’ordre dans lequel les appareils spécifiés sont supprimés n’est pas défini.
Exemples
L’exemple de code suivant ajoute l’appareil qui pPdo identifie à la liste des appareils qui doivent être supprimés lorsque l’appareil qui appareil spécifié est supprimé.
status = WdfDeviceAddRemovalRelationsPhysicalDevice(
device,
pPdo
);
Exigences
Exigence | Valeur |
---|---|
plateforme cible | Universel |
version minimale de KMDF | 1.0 |
d’en-tête | wdfdevice.h (include Wdf.h) |
bibliothèque | Wdf01000.sys (voir Versioning de la bibliothèque Framework.) |
IRQL | <= DISPATCH_LEVEL |
règles de conformité DDI | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |