WdfPdoMarkMissing, fonction (wdfpdo.h)
[S’applique uniquement à KMDF]
La méthode WdfPdoMarkMissing informe l’infrastructure qu’un appareil n’est plus accessible.
Syntaxe
NTSTATUS WdfPdoMarkMissing(
[in] WDFDEVICE Device
);
Paramètres
[in] Device
Handle d’un objet d’appareil framework qui représente l’objet d’appareil physique (PDO) de l’appareil.
Valeur retournée
Si l’opération réussit, la fonction retourne STATUS_SUCCESS. Les valeurs de retour supplémentaires sont les suivantes :
Code de retour | Description |
---|---|
|
Le handle d’appareil ne représente pas un AOP. |
|
L’objet d’appareil est introuvable. |
La méthode peut également retourner d’autres valeurs NTSTATUS.
Un bogue système case activée se produit si le pilote fournit un handle d’objet non valide.
Remarques
Pour plus d’informations sur WdfPdoMarkMissing, consultez Énumération statique.
Exemples
L’exemple de code suivant recherche une liste d’appareils enfants pour en trouver un qui correspond à un numéro de série spécifié. Lorsque l’exemple trouve l’enfant approprié, il appelle WdfPdoMarkMissing pour indiquer que l’enfant n’est pas accessible. Cet exemple a été extrait de l’exemple de pilote de bus De grille-pain et simplifié.
WDFDEVICE hChild = NULL;
NTSTATUS status = STATUS_INVALID_PARAMETER;
BOOLEAN found = FALSE;
PPDO_DEVICE_DATA pdoData;
WdfFdoLockStaticChildListForIteration(Device);
while ((hChild = WdfFdoRetrieveNextStaticChild(
Device,
hChild,
WdfRetrieveAddedChildren
)) != NULL) {
pdoData = PdoGetData(hChild); // Device object context space
if (SerialNo == pdoData->SerialNo) {
status = WdfPdoMarkMissing(hChild);
if(!NT_SUCCESS(status)) {
KdPrint(("WdfPdoMarkMissing failed 0x%x\n", status));
break;
}
found = TRUE;
break;
}
}
WdfFdoUnlockStaticChildListFromIteration(Device);
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Universal |
Version KMDF minimale | 1.0 |
En-tête | wdfpdo.h (inclure Wdf.h) |
Bibliothèque | Wdf01000.sys (consultez Gestion de version de la bibliothèque d’infrastructure.) |
IRQL | <= DISPATCH_LEVEL |
Règles de conformité DDI | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |