Compartilhar via


Função NtNotifyChangeMultipleKeys (winternl.h)

[Essa função pode ser alterada ou removida do Windows sem aviso prévio. ]

Solicita notificação quando uma chave do Registro ou qualquer uma de suas subchaves é alterada.

Sintaxe

__kernel_entry NTSTATUS NtNotifyChangeMultipleKeys(
  [in]            HANDLE               MasterKeyHandle,
  [in, optional]  ULONG                Count,
  [in, optional]  OBJECT_ATTRIBUTES [] SubordinateObjects,
  [in, optional]  HANDLE               Event,
  [in, optional]  PIO_APC_ROUTINE      ApcRoutine,
  [in, optional]  PVOID                ApcContext,
  [out]           PIO_STATUS_BLOCK     IoStatusBlock,
  [in]            ULONG                CompletionFilter,
  [in]            BOOLEAN              WatchTree,
  [out, optional] PVOID                Buffer,
  [in]            ULONG                BufferSize,
  [in]            BOOLEAN              Asynchronous
);

Parâmetros

[in] MasterKeyHandle

Um identificador para uma chave aberta. O identificador deve ser aberto com o direito de acesso KEY_NOTIFY .

[in, optional] Count

O número de subchaves sob a chave especificada pelo parâmetro MasterKeyHandle . Esse parâmetro deve ser 1.

[in, optional] SubordinateObjects

Ponteiro para uma matriz de estruturas OBJECT_ATTRIBUTES , uma para cada subchave. Essa matriz pode conter uma estrutura OBJECT_ATTRIBUTES .

[in, optional] Event

Um identificador para um evento criado pelo chamador. Se Event não for NULL, o chamador aguardará até que a operação seja bem-sucedida, momento em que o evento será sinalizado.

[in, optional] ApcRoutine

Um ponteiro para uma função APC (chamada de procedimento assíncrono) fornecida pelo chamador. Se ApcRoutine não for NULL, a função APC especificada será executada após a conclusão da operação.

[in, optional] ApcContext

Um ponteiro para um contexto fornecido pelo chamador para sua função APC. Esse valor é passado para a função APC quando ele é executado. O parâmetro assíncrono deve ser TRUE. Se ApcContext for especificado, o parâmetro Event deverá ser NULL.

[out] IoStatusBlock

Um ponteiro para uma estrutura IO_STATUS_BLOCK que contém a status final e informações sobre a operação. Para chamadas bem-sucedidas que retornam dados, o número de bytes gravados no parâmetro Buffer é fornecido no membro Information da estrutura IO_STATUS_BLOCK .

[in] CompletionFilter

Um bitmap de operações que disparam a notificação. Esse parâmetro pode ser um ou mais dos sinalizadores a seguir.

Valor Significado
REG_NOTIFY_CHANGE_NAME
Notifique o chamador se uma subchave for adicionada ou excluída.
REG_NOTIFY_CHANGE_ATTRIBUTES
Notifique o chamador de alterações nos atributos da chave, como as informações do descritor de segurança.
REG_NOTIFY_CHANGE_LAST_SET
Notifique o chamador de alterações para um valor da chave. Isso pode incluir a adição ou exclusão de um valor ou a alteração de um valor existente.
REG_NOTIFY_CHANGE_SECURITY
Notifique o chamador de alterações ao descritor de segurança da chave.

[in] WatchTree

Se esse parâmetro for TRUE, o chamador será notificado sobre alterações em todas as subchaves da chave especificada. Se esse parâmetro for FALSE, o chamador será notificado apenas sobre as alterações na chave especificada.

[out, optional] Buffer

Reservado para uso do sistema. Esse parâmetro deve ser NULL.

[in] BufferSize

Reservado para uso do sistema. Esse parâmetro deve ser zero.

[in] Asynchronous

Se esse parâmetro for TRUE, a função retornará imediatamente. Se esse parâmetro for FALSE, a função não retornará até que o evento especificado ocorra.

Retornar valor

Retorna um código de erro ou NTSTATUS .

Se o parâmetro assíncrono for TRUE e o evento especificado ainda não tiver ocorrido, a função retornará STATUS_PENDING.

Os formulários e a significância dos códigos de erro NTSTATUS estão listados no arquivo de cabeçalho Ntstatus.h disponível no WDK e são descritos na documentação do WDK.

Comentários

Essa função não tem nenhum arquivo de cabeçalho associado. Você também pode usar as funções LoadLibrary e GetProcAddress para vincular dinamicamente a Ntdll.dll.

Requisitos

   
Plataforma de Destino Windows
Cabeçalho winternl.h
Biblioteca ntdll.lib
DLL ntdll.dll

Confira também

Direitos de segurança e acesso de chave do Registro