Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
[S’applique uniquement à KMDF]
La méthode WdfIoResourceListRemoveByDescriptor supprime un descripteur de ressource de la configuration logique d’une liste de ressources.
Syntaxe
VOID WdfIoResourceListRemoveByDescriptor(
[in] WDFIORESLIST ResourceList,
[in] PIO_RESOURCE_DESCRIPTOR Descriptor
);
Paramètres
[in] ResourceList
Handle vers un objet de liste de plages de ressources framework qui représente une configuration logique des ressources matérielles pour un appareil.
[in] Descriptor
Pointeur vers une structure IO_RESOURCE_DESCRIPTOR qui décrit une ressource matérielle.
Valeur de retour
Aucun
Remarques
Une vérification de bogue se produit si le pilote fournit un handle d’objet non valide.
La méthode WdfIoResourceListRemoveByDescriptor supprime le descripteur de ressource qui correspond au paramètre Descriptor. Pour trouver une correspondance, la méthode compare le descripteur de ressource spécifié aux descripteurs de ressource dans la configuration logique, octet pour octet.
Quand WdfIoResourceListRemoveByDescriptor supprime le descripteur de ressource qui a la valeur d’index n, la valeur d’index du descripteur de ressource suivant passe de n+1 à n.
Pour plus d’informations sur les listes de ressources requises et les configurations logiques, consultez Ressources matérielles pour Framework-Based Pilotes.
Exemples
L’exemple de code suivant recherche une configuration logique pour un descripteur de ressource qui contient une adresse de port spécifiée et supprime ce descripteur de ressource.
IO_RESOURCE_DESCRIPTOR descriptor;
ULONG resCount, j;
//
// Get the number of resource descriptors that
// are in this logical configuration.
//
resCount = WdfIoResourceListGetCount(reslist);
for (j = 0; j < resCount; j++) {
PIO_RESOURCE_DESCRIPTOR descriptor;
//
// Get the next resource descriptor.
//
descriptor = WdfIoResourceListGetDescriptor(
reslist,
j
);
//
// Stop if this descriptor is the port descriptor that
// we're looking for, and remove the descriptor.
//
if (descriptor->Type == CmResourceTypePort) {
if ((descriptor->u.port.MinimumAddress) == PORT_RANGE_A) {
WdfIoResourceListRemoveByDescriptor(
Reslist,
descriptor
);
break;
}
}
}
Exigences
| Exigence | Valeur |
|---|---|
| plateforme cible | Universel |
| version minimale de KMDF | 1.0 |
| d’en-tête | wdfresource.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) |