Compartilhar via


Função WdfDeviceInitAssignName (wdfdevice.h)

[Aplica-se somente ao KMDF]

O método WdfDeviceInitAssignName atribui um nome de dispositivo ao objeto de dispositivo de um dispositivo.

Sintaxe

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

Parâmetros

[in] DeviceInit

Um ponteiro para uma estrutura WDFDEVICE_INIT.

[in, optional] DeviceName

Um ponteiro para uma estrutura de UNICODE_STRING que representa o nome do dispositivo.

Valor de retorno

Se WdfDeviceInitAssignName não encontrar erros, ele retornará STATUS_SUCCESS. Os valores de retorno adicionais incluem:

Código de retorno Descrição
STATUS_INSUFFICIENT_RESOURCES
O sistema não pode alocar espaço para armazenar o nome do dispositivo.

Observações

Se um driver chamar WdfDeviceInitAssignName, ele deverá fazer isso antes de chamar WdfDeviceCreate.

Se um driver chamar WdfDeviceInitAssignName para atribuir um nome, o driver poderá chamar posteriormente WdfDeviceInitAssignName com um parâmetroDeviceName null para limpar o nome do dispositivo. Se o nome do dispositivo for NULL e o objeto do dispositivo exigir um nome (porque ele representa um PDO ou um dispositivo de controle ), o sistema operacional criará um nome.

Para obter mais informações sobre como nomear objetos de dispositivo, consulte Controlando o acesso ao dispositivo em drivers de Framework-Based.

Para obter mais informações sobre como chamar WdfDeviceCreate, consulte Criando um objeto de dispositivo framework.

Exemplos

O exemplo de código a seguir atribui um nome de dispositivo NT a um dispositivo.

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

Requisitos

Requisito Valor
da Plataforma de Destino Universal
versão mínima do KMDF 1.0
cabeçalho wdfdevice.h (inclua Wdf.h)
biblioteca Wdf01000.sys (consulte o Controle de Versão da Biblioteca da Estrutura.)
IRQL PASSIVE_LEVEL
regras de conformidade de DDI ChildDeviceInitAPI(kmdf), ControlDeviceInitAPI(kmdf), DeviceInitAPI(kmdf), DriverCre(kmdf), InitFreeDeviceCallback(kmdf), InitFreeDeviceCreate(kmdf), InitFreeNull(kmd, kmdfIrql(kmdf), kmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), P, PdoInitFreeDeviceCallback(kmdf), PdoInitFreeDeviceCreate(kmdf)

Consulte também

WdfDeviceRetrieveDeviceName