Share 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. Este valor pode ser um dos a seguir.

Valor Significado
NETLOGON_CONTROL_QUERY
1
Sem 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 sincronizado 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 quaisquer 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. Essa 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 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á executado com ping. 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 de atualizações DNS executadas pelo serviço Netlogon. Se ocorrerem erros de registro ou cancelamento de registro 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 retornado

O método retorna 0x00000000 (NERR_Success) em caso de êxito; caso contrário, ele retornará 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.

Valor/código retornado Descrição
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. O acesso foi 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 de 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.

Comentários

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

Requisitos

   
Plataforma de Destino Windows
Cabeçalho lmaccess.h
Biblioteca Netapi32.lib
DLL Netapi32.dll

Confira também

NETLOGON_INFO_1

NETLOGON_INFO_2

NETLOGON_INFO_3

NETLOGON_INFO_4