WdfCmResourceListGetCount, fonction (wdfresource.h)
[S’applique à KMDF et UMDF]
La méthode WdfCmResourceListGetCount retourne le nombre de descripteurs de ressources contenus dans une liste de ressources spécifiée.
Syntaxe
ULONG WdfCmResourceListGetCount(
[in] WDFCMRESLIST List
);
Paramètres
[in] List
Handle d’un objet de liste de ressources d’infrastructure qui représente une liste de ressources matérielles pour un appareil.
Valeur retournée
WdfCmResourceListGetCount retourne le nombre de descripteurs de ressources contenus dans la liste de ressources spécifiée par le paramètre List .
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 les listes de ressources, consultez Ressources matérielles pour les pilotes Framework-Based.
Exemples
L’exemple de code suivant montre comment une fonction de rappel EvtDevicePrepareHardware peut localiser la mémoire, le port et les ressources d’interruption dans la liste des ressources matérielles traduites que le gestionnaire de Plug-and-Play (PnP) a attribuées à un appareil.
NTSTATUS
MyEvtDevicePrepareHardware (
WDFDEVICE Device,
WDFCMRESLIST Resources,
WDFCMRESLIST ResourcesTranslated
)
{
ULONG i;
PCM_PARTIAL_RESOURCE_DESCRIPTOR desc;
for (i = 0; i < WdfCmResourceListGetCount(ResourcesTranslated); i++) {
desc = WdfCmResourceListGetDescriptor(
ResourcesTranslated,
i
);
switch (desc->Type) {
case CmResourceTypeMemory:
//
// Handle memory resources here.
//
break;
case CmResourceTypePort:
//
// Handle port resources here.
//
break;
case CmResourceTypeInterrupt:
//
// Handle interrupt resources here.
//
break;
default:
//
// Ignore all other descriptors.
//
break;
}
}
}
Configuration requise
Condition requise | Valeur |
---|---|
Plateforme cible | Universal |
Version KMDF minimale | 1.0 |
Version UMDF minimale | 2.0 |
En-tête | wdfresource.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) |