WdfIoResourceRequirementsListInsertIoResList, fonction (wdfresource.h)
[S’applique uniquement à KMDF]
La méthode WdfIoResourceRequirementsListInsertIoResList insère une configuration logique dans une liste des exigences de ressources.
Syntaxe
NTSTATUS WdfIoResourceRequirementsListInsertIoResList(
[in] WDFIORESREQLIST RequirementsList,
[in] WDFIORESLIST IoResList,
[in] ULONG Index
);
Paramètres
[in] RequirementsList
Handle vers un objet framework resource-requirements-list qui représente la liste des besoins en ressources d’un appareil.
[in] IoResList
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] Index
Valeur de base zéro utilisée comme index dans l’ensemble de configurations logiques déjà dans la liste des exigences de ressources qui RequirementsList spécifie. Pour ajouter une configuration à la fin de la liste, spécifiez WDF_INSERT_AT_END ou la valeur de retour de WdfIoResourceRequirementsListGetCount.
Valeur de retour
WdfIoResourceRequirementsListInsertIoResList retourne STATUS_SUCCESS si l’opération réussit. Sinon, cette méthode peut retourner l’une des valeurs suivantes :
Retourner le code | Description |
---|---|
|
Paramètre non valide tel que spécifié. |
|
L’objet resource-requirements-list spécifié ne possède pas l’objet resource-range-list spécifié. |
|
L’infrastructure n’a pas pu allouer d’espace pour stocker l’objet resource-range-list. |
|
La valeur spécifiée pour le paramètre Index était trop volumineuse. |
Une vérification des bogues système se produit si le pilote fournit un handle d’objet non valide.
Remarques
La méthode WdfIoResourceRequirementsListInsertIoResList insère la configuration logique que le paramètre IoResList spécifie dans la liste des exigences de ressources que le paramètre RequirementsList spécifie, devant la configuration logique que la valeur Index identifie.
Pour ajouter une configuration logique à la fin d’une liste des besoins en ressources, utilisez WDF_INSERT_AT_END ou la valeur de retour de WdfIoResourceRequirementsListGetCount comme valeur Index. Vous pouvez également utiliser la méthode WdfIoResourceRequirementsListAppendIoResList.
Pour plus d’informations sur les listes de configuration requise pour les ressources, consultez Ressources matérielles pour les pilotes Framework-Based.
Exemples
L’exemple de code suivant montre comment une fonction de rappel EvtDeviceResourceRequirementsQuery peut créer deux configurations logiques vides et les ajouter à une liste des besoins en ressources.
NTSTATUS
Example_EvtDeviceResourceRequirementsQuery(
IN WDFDEVICE Device,
IN WDFIORESREQLIST RequirementsList
)
{
NTSTATUS status;
WDFIORESLIST logConfig1;
WDFIORESLIST logConfig2;
status = WdfIoResourceListCreate(
RequirementsList,
WDF_NO_OBJECT_ATTRIBUTES,
&logConfig1
);
if (!NT_SUCCESS(status)) {
return status;
}
status = WdfIoResourceRequirementsListAppendIoResList(
RequirementsList,
logConfig1
);
if (!NT_SUCCESS(status)) {
return status;
}
status = WdfIoResourceListCreate(
RequirementsList,
WDF_NO_OBJECT_ATTRIBUTES,
&logConfig2
);
if (!NT_SUCCESS(status)) {
return status;
}
status = WdfIoResourceRequirementsListInsertIoResList(
RequirementsList,
logConfig2,
WDF_INSERT_AT_END
);
if (!NT_SUCCESS(status)) {
return status;
}
...
}
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) |