Partager via


WdfPdoInitAllocate, fonction (wdfpdo.h)

[S’applique à KMDF uniquement]

La méthode WdfPdoInitAllocate alloue une structure de WDFDEVICE_INIT pour un pilote de bus basé sur l’infrastructure, que le pilote de bus utilise pour signaler un nouvel appareil.

Syntaxe

PWDFDEVICE_INIT WdfPdoInitAllocate(
  [in] WDFDEVICE ParentDevice
);

Paramètres

[in] ParentDevice

Handle vers un objet d’appareil framework qui représente l’appareil parent du nouvel appareil. L’objet d’appareil framework doit représenter un objet d’appareil fonctionnel (FDO).

Valeur retournée

Si l’opération réussit, la méthode retourne un pointeur vers une structure de WDFDEVICE_INIT allouée par l’infrastructure. Sinon, la méthode retourne NULL.

Remarques

Si un pilote de bus utilise l’énumération statique, il signale un nouvel appareil en :

  1. Appel de WdfPdoInitAllocate pour allouer une structure de WDFDEVICE_INIT .
  2. Appel de méthodes d’initialisation d’objet d’appareild’infrastructure et de méthodes d’initialisation PDO d’infrastructure, si nécessaire, pour initialiser la structure WDFDEVICE_INIT. Si un appel à l’une de ces méthodes échoue, le pilote doit appeler WdfDeviceInitFree.
  3. Appel de WdfDeviceCreate pour créer un objet d’appareil d’infrastructure, en fournissant la structure WDFDEVICE_INIT initialisée en tant qu’entrée.
Pour plus d’informations sur l’énumération statique, consultez Énumération des appareils sur un bus.

Exemples

Pour obtenir un exemple de code qui utilise WdfPdoInitAllocate, consultez WdfFdoAddStaticChild.

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 des versions de la bibliothèque d’infrastructure).)
IRQL PASSIVE_LEVEL
Règles de conformité DDI AddPdoToStaticChildList(kmdf), DoubleDeviceInitFree(kmdf), DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), PdoDeviceInitAPI(kmdf), PdoInitFreeDeviceCallback(kmdf), PdoInitFreeDeviceCreate(kmdf), PdoInitFreeDeviceCreateType2(kmdf), PdoInitFreeDeviceCreateType4(kmdf)

Voir aussi

WdfControlDeviceInitAllocate