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)