Fonction WdfDeviceInitAssignName (wdfdevice.h)

[S’applique uniquement à KMDF]

La méthode WdfDeviceInitAssignName affecte un nom d’appareil à l’objet d’appareil d’un appareil.

Syntaxe

NTSTATUS WdfDeviceInitAssignName(
  [in]           PWDFDEVICE_INIT  DeviceInit,
  [in, optional] PCUNICODE_STRING DeviceName
);

Paramètres

[in] DeviceInit

Pointeur vers une structure WDFDEVICE_INIT .

[in, optional] DeviceName

Pointeur vers une structure UNICODE_STRING qui représente le nom de l’appareil.

Valeur retournée

Si WdfDeviceInitAssignName ne rencontre aucune erreur, il retourne STATUS_SUCCESS. Les valeurs de retour supplémentaires sont les suivantes :

Code de retour Description
STATUS_INSUFFICIENT_RESOURCES
Le système ne peut pas allouer d’espace pour stocker le nom de l’appareil.

Remarques

Si un pilote appelle WdfDeviceInitAssignName, il doit le faire avant d’appeler WdfDeviceCreate.

Si un pilote appelle WdfDeviceInitAssignName pour attribuer un nom, le pilote peut ensuite appeler WdfDeviceInitAssignName avec un paramètre NULLDeviceName pour effacer le nom de l’appareil. Si le nom de l’appareil est NULL et que l’objet d’appareil nécessite un nom (car il représente un PDO ou un appareil de contrôle), le système d’exploitation crée un nom.

Pour plus d’informations sur le nommage d’objets d’appareil, consultez Contrôle de l’accès aux appareils dans les pilotes Framework-Based.

Pour plus d’informations sur l’appel de WdfDeviceCreate, consultez Création d’un objet d’appareil framework.

Exemples

L’exemple de code suivant attribue un nom d’appareil NT à un appareil.

DECLARE_CONST_UNICODE_STRING(MyDeviceName, L"\\Device\\Ramdisk") ;
status = WdfDeviceInitAssignName(
                                 DeviceInit,
                                 &MyDeviceName
                                 );
if (!NT_SUCCESS(status)) {
    return status;
}

Configuration requise

Condition requise Valeur
Plateforme cible Universal
Version KMDF minimale 1.0
En-tête wdfdevice.h (include Wdf.h)
Bibliothèque Wdf01000.sys (consultez Gestion de version de la bibliothèque d’infrastructure.)
IRQL PASSIVE_LEVEL
Règles de conformité DDI ChildDeviceInitAPI(kmdf),ControlDeviceInitAPI(kmdf),DeviceInitAPI(kmdf), DriverCreate(kmdf), InitFreeDeviceCallback(kmdf), InitFreeDeviceCreate(kmdf), InitFreeNull(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), PdoDeviceInitAPI(kmdf), PdoInitFreeDeviceCallback(kmdf), PdoInitFreeDeviceCreate(kmdf)

Voir aussi

WdfDeviceRetrieveDeviceName