Función WdfDeviceInitAssignName (wdfdevice.h)

[Solo se aplica a KMDF]

El método WdfDeviceInitAssignName asigna un nombre de dispositivo al objeto de dispositivo de un dispositivo.

Sintaxis

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

Parámetros

[in] DeviceInit

Puntero a una estructura de WDFDEVICE_INIT .

[in, optional] DeviceName

Puntero a una estructura UNICODE_STRING que representa el nombre del dispositivo.

Valor devuelto

Si WdfDeviceInitAssignName no encuentra ningún error, devuelve STATUS_SUCCESS. Entre los valores devueltos adicionales se incluyen:

Código devuelto Descripción
STATUS_INSUFFICIENT_RESOURCES
El sistema no puede asignar espacio para almacenar el nombre del dispositivo.

Comentarios

Si un controlador llama a WdfDeviceInitAssignName, debe hacerlo antes de llamar a WdfDeviceCreate.

Si un controlador llama a WdfDeviceInitAssignName para asignar un nombre, el controlador puede llamar posteriormente a WdfDeviceInitAssignName con un parámetro DeviceName NULL para borrar el nombre del dispositivo. Si el nombre del dispositivo es NULL y el objeto de dispositivo requiere un nombre (porque representa un PDO o un dispositivo de control), el sistema operativo creará un nombre.

Para obtener más información sobre cómo asignar nombres a objetos de dispositivo, vea Controlar el acceso a dispositivos en controladores de Framework-Based.

Para obtener más información sobre cómo llamar a WdfDeviceCreate, vea Creating a Framework Device Object.

Ejemplos

En el ejemplo de código siguiente se asigna un nombre de dispositivo NT a un dispositivo.

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

Requisitos

Requisito Value
Plataforma de destino Universal
Versión mínima de KMDF 1.0
Encabezado wdfdevice.h (incluir Wdf.h)
Library Wdf01000.sys (consulte Control de versiones de la biblioteca de marcos).
IRQL PASSIVE_LEVEL
Reglas de cumplimiento de 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)

Consulte también

WdfDeviceRetrieveDeviceName