Compartilhar via


função I_NetLogonControl2 (lmaccess.h)

A função I_NetLogonControl2 controla vários aspectos do serviço Netlogon.

Sintaxe

NET_API_STATUS NET_API_FUNCTION I_NetLogonControl2(
  [in, optional] LPCWSTR ServerName,
  [in]           DWORD   FunctionCode,
  [in]           DWORD   QueryLevel,
  [in]           LPBYTE  Data,
  [out]          LPBYTE  *Buffer
);

Parâmetros

[in, optional] ServerName

O nome do servidor remoto.

[in] FunctionCode

A operação a ser executada. Esse valor pode ser um dos seguintes.

Value Meaning
NETLOGON_CONTROL_QUERY
1
Nenhuma operação. Retorna apenas as informações solicitadas.
NETLOGON_CONTROL_REPLICATE
2
Força o banco de dados SAM (gerenciador de contas de segurança) em um BDC (controlador de domínio de backup) a ser colocado em sincronia com a cópia no controlador de domínio primário (PDC). Essa operação não implica uma sincronização completa. O serviço Netlogon replica as diferenças pendentes, se possível.
NETLOGON_CONTROL_SYNCHRONIZE
3
Força um BDC a obter uma nova cópia do banco de dados SAM do PDC. Esta operação executa uma sincronização completa.
NETLOGON_CONTROL_PDC_REPLICATE
4
Força um PDC a solicitar que cada BDC seja replicado agora.
NETLOGON_CONTROL_REDISCOVER
5
Força um controlador de domínio (DC) a redescobrir o DC de domínio confiável especificado.
NETLOGON_CONTROL_TC_QUERY
6
Consulta o canal seguro, solicitando uma atualização de status sobre seu último uso.
NETLOGON_CONTROL_TC_VERIFY
10
Verifica o status atual do canal seguro de domínio confiável especificado. Se o status indicar êxito, o controlador de domínio será pingado. Se o status ou o ping indicar falha, um novo controlador de domínio confiável será redescoberto.
NETLOGON_CONTROL_CHANGE_PASSWORD
9
Força uma alteração de senha em um canal seguro para um domínio confiável.
NETLOGON_CONTROL_FORCE_DNS_REG
11
Força o controlador de domínio a registrar novamente todos os seus registros DNS. O parâmetro QueryLevel deve ser definido como 1.
NETLOGON_CONTROL_QUERY_DNS_REG
12
Emite uma consulta solicitando o status das atualizações DNS executadas pelo serviço Netlogon. Se ocorrerem erros de registro ou desregistração de DNS na última atualização, o resultado será negativo. O parâmetro QueryLevel deve ser definido como 1.

[in] QueryLevel

Indica quais informações devem ser retornadas do serviço Netlogon. Esse valor pode ser qualquer uma das estruturas a seguir.

NETLOGON_INFO_1 (1)

NETLOGON_INFO_2 (2)

NETLOGON_INFO_3 (3)

NETLOGON_INFO_4 (4)

[in] Data

Carrega dados de entrada que dependem do valor especificado no parâmetro FunctionCode . Os códigos de função NETLOGON_CONTROL_REDISCOVER e NETLOGON_CONTROL_TC_QUERY especificam o nome de domínio confiável (o tipo de dados é LPWSTR *).

[out] Buffer

Retorna um ponteiro para um buffer que contém as informações solicitadas na estrutura passada no parâmetro QueryLevel .

O buffer deve ser liberado usando NetApiBufferFree.

Valor de retorno

O método retorna 0x00000000 (NERR_Success) com êxito; caso contrário, ele retorna um código de erro diferente de zero definido em Lmerr.h ou Winerror.h. NET_API_STATUS códigos de erro começam com o valor 0x00000834. Para obter mais informações sobre códigos de erro de gerenciamento de rede, consulte Network_Management_Error_Codes. A tabela a seguir descreve possíveis valores retornados.

Código/valor de retorno Description
NERR_Success
0x00000000
A chamada de método foi concluída sem erros.
ERROR_ACCESS_DENIED
0x00000005
A validação de acesso no chamador retorna false. Acesso negado.
ERROR_NOT_ENOUGH_MEMORY
0x00000008
Não há armazenamento suficiente disponível para processar esse comando.
ERROR_NOT_SUPPORTED
0x00000032
Um código de função não é válido no servidor especificado. Por exemplo, NETLOGON_CONTROL_REPLICATE pode ter sido passado para um controlador de domínio primário (PDC).
ERROR_INVALID_PARAMETER
0x00000057
Um parâmetro está incorreto.
ERROR_INVALID_LEVEL
0x0000007C
O nível de chamada de consulta não está correto.
ERROR_SERVICE_NOT_ACTIVE
0x000004261210121
O serviço não foi iniciado.
ERROR_INVALID_COMPUTERNAME
0x000004BA
O formato do nome do computador especificado é inválido.
ERROR_NO_LOGON_SERVERS
0x0000051F
No momento, não há servidores de logon disponíveis para atender à solicitação de logon.
ERROR_INVALID_DOMAIN_ROLE
0x0000054A
A alteração de senha para uma conta de confiança de interdomínio foi tentada em um BDC (controlador de domínio de backup). Essa operação só é permitida para o PDC do domínio.
ERROR_NO_SUCH_DOMAIN
0x0000054B
O domínio especificado não existe ou não pôde ser contatado.
NERR_UserNotFound
0x000008AD
Não foi possível encontrar o nome de usuário.

Observações

Essa função pode ser usada para solicitar que um BDC garanta que sua cópia do banco de dados SAM seja trazida up-to-date. Ele também pode ser usado para determinar se um BDC atualmente tem um canal seguro aberto para o PDC.

Requirements

Requirement Value
da Plataforma de Destino Windows
Header lmaccess.h
Library Netapi32.lib
de DLL Netapi32.dll

Consulte também

NETLOGON_INFO_1

NETLOGON_INFO_2

NETLOGON_INFO_3

NETLOGON_INFO_4