Compartilhar via


Função WdfDriverOpenParametersRegistryKey (wdfdriver.h)

[Aplica-se a KMDF e UMDF]

O método WdfDriverOpenParametersRegistryKey abre a chave do registro Parameters do driver e recupera um identificador para um objeto de chave de registro da estrutura que representa a chave.

Sintaxe

NTSTATUS WdfDriverOpenParametersRegistryKey(
  [in]           WDFDRIVER              Driver,
  [in]           ACCESS_MASK            DesiredAccess,
  [in, optional] PWDF_OBJECT_ATTRIBUTES KeyAttributes,
  [out]          WDFKEY                 *Key
);

Parâmetros

[in] Driver

Um identificador para o objeto de driver de estrutura do driver que o driver obteve de uma chamada anterior para WdfDriverCreate ou WdfGetDriver.

[in] DesiredAccess

Um valor do tipo ACCESS_MASK que especifica uma máscara de acesso para a chave do Registro de Parâmetros .

Um driver KMDF normalmente solicita KEY_READ, KEY_WRITE ou KEY_READ | KEY_WRITE.

Se você estiver escrevendo um driver UMDF, use KEY_READ ou KEY_READ | KEY_SET_VALUE.

Como prática recomendada, peça apenas os tipos de acesso necessários ao driver.

[in, optional] KeyAttributes

Um ponteiro para uma estrutura de WDF_OBJECT_ATTRIBUTES alocada pelo chamador que especifica atributos de objeto para o objeto de chave de registro da estrutura. Esse parâmetro é opcional e pode ser WDF_NO_OBJECT_ATTRIBUTES.

[out] Key

Um ponteiro para um local que recebe um identificador para um objeto de chave de registro da estrutura.

Retornar valor

WdfDriverOpenParametersRegistryKey retornará STATUS_SUCCESS se a operação for bem-sucedida. Os valores retornados adicionais incluem:

Código de retorno Descrição
STATUS_ACCESS_DENIED
Um driver UMDF especificou um dos seguintes sinalizadores no parâmetro DesiredAccess :
  • GENERIC_WRITE
  • KEY_CREATE_SUBKEY
  • WRITE_DAC

Como os valores acima são inválidos para drivers UMDF, sinalizadores universais como GENERIC_ALL e STANDARD_RIGHTS_ALL também fazem com que WdfDriverOpenParametersRegistryKey falhe com esse valor retornado.

 

Para obter mais informações sobre valores retornados, consulte Erros de criação de objeto da estrutura.

Esse método também pode retornar outros valores NTSTATUS.

Um bug do sistema marcar ocorrerá se um driver KMDF especificar um identificador inválido no Driver.

Comentários

A chave Parâmetros do driver está localizada na árvore Serviços do Registro. Se a chave Parameters do driver não existir, o método WdfDriverOpenParametersRegistryKey a criará.

Quando o driver terminar de usar a chave do Registro parâmetros , o driver deverá chamar WdfRegistryClose.

Observação

O UMDF não dá suporte à criação de subchaves.

Para obter mais informações sobre o registro, consulte Usando o Registro em drivers de Framework-Based.

Exemplos

O exemplo de código a seguir abre a chave do Registro parâmetros de um driver e obtém um identificador para um objeto de chave de registro da estrutura que representa a chave.

WDFKEY hKey;

status = WdfDriverOpenParametersRegistryKey(
                                            Driver,
                                            STANDARD_RIGHTS_ALL,
                                            WDF_NO_OBJECT_ATTRIBUTES,
                                            &hKey
                                            );

Requisitos

Requisito Valor
Plataforma de Destino Universal
Versão mínima do KMDF 1.0
Versão mínima do UMDF 2,0
Cabeçalho wdfdriver.h (inclua Wdf.h)
Biblioteca Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF)
IRQL PASSIVE_LEVEL
Regras de conformidade de DDI DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)

Confira também

ACCESS_MASK

WDF_OBJECT_ATTRIBUTES

WdfDriverCreate

WdfDriverGetRegistryPath

WdfGetDriver

WdfRegistryClose