Partager via


fonction I_NetLogonControl2 (lmaccess.h)

La fonction I_NetLogonControl2 contrôle différents aspects du service Netlogon.

Syntaxe

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

Paramètres

[in, optional] ServerName

Nom du serveur distant.

[in] FunctionCode

Opération à effectuer. Cette valeur peut être l’une des suivantes.

Valeur Meaning
NETLOGON_CONTROL_QUERY
1
Aucune opération. Retourne uniquement les informations demandées.
NETLOGON_CONTROL_REPLICATE
2
Force la base de données du gestionnaire de comptes de sécurité (SAM) sur un contrôleur de domaine de sauvegarde (BDC) à être synchronisée avec la copie sur le contrôleur de domaine principal (PDC). Cette opération n’implique pas une synchronisation complète. Le service Netlogon réplique toutes les différences en suspens si possible.
NETLOGON_CONTROL_SYNCHRONIZE
3
Force un BDC à obtenir une nouvelle copie de la base de données SAM à partir du contrôleur de domaine principal. Cette opération effectue une synchronisation complète.
NETLOGON_CONTROL_PDC_REPLICATE
4
Force un contrôleur de domaine à demander à chaque BDC de répliquer maintenant.
NETLOGON_CONTROL_REDISCOVER
5
Force un contrôleur de domaine (DC) à redécouvrir le contrôleur de domaine approuvé spécifié.
NETLOGON_CONTROL_TC_QUERY
6
Interroge le canal sécurisé, en demandant une mise à jour d’état sur sa dernière utilisation.
NETLOGON_CONTROL_TC_VERIFY
10
Vérifie l’état actuel du canal sécurisé de domaine approuvé spécifié. Si l’état indique la réussite, le contrôleur de domaine est ping. Si l’état ou le test ping indique l’échec, un nouveau contrôleur de domaine approuvé est redécouvert.
NETLOGON_CONTROL_CHANGE_PASSWORD
9
Force une modification de mot de passe sur un canal sécurisé vers un domaine approuvé.
NETLOGON_CONTROL_FORCE_DNS_REG
11
Force le contrôleur de domaine à réinscrire tous ses enregistrements DNS. Le paramètre QueryLevel doit être défini sur 1.
NETLOGON_CONTROL_QUERY_DNS_REG
12
Émet une requête demandant l’état des mises à jour DNS effectuées par le service Netlogon. Si des erreurs d’inscription ou de désinscription DNS se sont produites lors de la dernière mise à jour, le résultat est négatif. Le paramètre QueryLevel doit être défini sur 1.

[in] QueryLevel

Indique quelles informations doivent être retournées à partir du service Netlogon. Cette valeur peut être l’une des structures suivantes.

NETLOGON_INFO_1 (1)

NETLOGON_INFO_2 (2)

NETLOGON_INFO_3 (3)

NETLOGON_INFO_4 (4)

[in] Data

Porte les données d’entrée qui dépendent de la valeur spécifiée dans le paramètre FunctionCode . Les codes de fonction NETLOGON_CONTROL_REDISCOVER et NETLOGON_CONTROL_TC_QUERY spécifient le nom de domaine approuvé (le type de données est LPWSTR *).

[out] Buffer

Retourne un pointeur vers une mémoire tampon qui contient les informations demandées dans la structure passée dans le paramètre QueryLevel .

La mémoire tampon doit être libérée à l’aide de NetApiBufferFree.

Valeur retournée

La méthode retourne 0x00000000 (NERR_Success) en cas de réussite ; sinon, elle retourne un code d’erreur différent de zéro défini dans Lmerr.h ou Winerror.h. NET_API_STATUS codes d’erreur commencent par la valeur 0x00000834. Pour plus d’informations sur les codes d’erreur de gestion réseau, consultez Network_Management_Error_Codes. Le tableau suivant décrit les valeurs de retour possibles.

Retourner le code/la valeur Descriptif
NERR_Success
0x00000000
L’appel de méthode s’est terminé sans erreur.
ERROR_ACCESS_DENIED
0x00000005
La validation d’accès sur l’appelant retourne false. L’accès est refusé.
ERROR_NOT_ENOUGH_MEMORY
0x00000008
Le stockage insuffisant est disponible pour traiter cette commande.
ERROR_NOT_SUPPORTED
0x00000032
Un code de fonction n’est pas valide sur le serveur spécifié. Par exemple, NETLOGON_CONTROL_REPLICATE ont peut-être été passées à un contrôleur de domaine principal (PDC).
ERROR_INVALID_PARAMETER
0x00000057
Un paramètre est incorrect.
ERROR_INVALID_LEVEL
0x0000007C
Le niveau d’appel de requête n’est pas correct.
ERROR_SERVICE_NOT_ACTIVE
0x000004261210121
Le service n’a pas été démarré.
ERROR_INVALID_COMPUTERNAME
0x000004BA
Le format du nom d’ordinateur spécifié n’est pas valide.
ERROR_NO_LOGON_SERVERS
0x0000051F
Il n’existe actuellement aucun serveur d’ouverture de session disponible pour le service de la demande d’ouverture de session.
ERROR_INVALID_DOMAIN_ROLE
0x0000054A
La modification du mot de passe pour un compte d’approbation interdomaine a été tentée sur un contrôleur de domaine de sauvegarde (BDC). Cette opération est uniquement autorisée pour le contrôleur de domaine.
ERROR_NO_SUCH_DOMAIN
0x0000054B
Le domaine spécifié n’existe pas ou n’a pas pu être contacté.
NERR_UserNotFound
0x000008AD
Impossible de trouver le nom d’utilisateur.

Remarques

Cette fonction peut être utilisée pour demander à un BDC de s’assurer que sa copie de la base de données SAM est apportée up-to-date. Il peut également être utilisé pour déterminer si un bdc dispose actuellement d’un canal sécurisé ouvert au contrôleur de domaine principal.

Spécifications

Requirement Valeur
plateforme cible Fenêtres
Header lmaccess.h
Library Netapi32.lib
DLL Netapi32.dll

Voir aussi

NETLOGON_INFO_1

NETLOGON_INFO_2

NETLOGON_INFO_3

NETLOGON_INFO_4