Partager via


Fonction SetComputerNameExA (sysinfoapi.h)

Définit un nouveau nom NetBIOS ou DNS pour l’ordinateur local. Les modifications de nom apportées par SetComputerNameEx ne prennent pas effet tant que l’utilisateur n’a pas redémarré l’ordinateur.

Syntaxe

BOOL SetComputerNameExA(
  [in] COMPUTER_NAME_FORMAT NameType,
  [in] LPCSTR               lpBuffer
);

Paramètres

[in] NameType

Type de nom à définir. Ce paramètre peut être l’une des valeurs suivantes du type d’énumération COMPUTER_NAME_FORMAT .

Valeur Signification
ComputerNamePhysicalDnsDomain
Définit le suffixe DNS principal de l’ordinateur.
ComputerNamePhysicalDnsHostname
Définit NetBIOS et le nom de l’ordinateur (la première étiquette du nom DNS complet) sur le nom spécifié dans lpBuffer. Si le nom dépasse MAX_COMPUTERNAME_LENGTH caractères, le nom NetBIOS est tronqué pour MAX_COMPUTERNAME_LENGTH caractères, sans inclure le caractère null de fin.
ComputerNamePhysicalNetBIOS
Définit le nom NetBIOS sur le nom spécifié dans lpBuffer. Le nom ne peut pas dépasser MAX_COMPUTERNAME_LENGTH caractères, sans inclure le caractère null de fin.

Avertissement : L’utilisation de cette option pour définir le nom NetBIOS rompt la convention des noms NetBIOS et DNS interdépendants. Les applications qui utilisent la fonction DnsHostnameToComputerName pour dériver le nom NetBIOS de la première étiquette du nom DNS échouent si cette convention est rompue.

[in] lpBuffer

Nouveau nom. Le nom ne peut pas inclure des caractères de contrôle, des espaces de début ou de fin, ou l’un des caractères suivants : " / \ [ ] : | <> + = ; , ?

Valeur retournée

Si la fonction réussit, la valeur de retour est une valeur différente de zéro.

Si la fonction échoue, la valeur de retour est égale à zéro. Pour obtenir des informations détaillées sur l’erreur, appelez GetLastError.

Remarques

SetComputerNameEx peut définir le nom de l’ordinateur (la première étiquette du nom DNS complet) ou le suffixe DNS principal de l’ordinateur local. Il ne peut pas définir un nom DNS complet dans un seul appel.

Si l’ordinateur local est un nœud dans un cluster, SetComputerNameEx définit le nom NetBIOS ou DNS de l’ordinateur local, et non celui du serveur virtuel du cluster.

Le processus qui appelle la fonction SetComputerNameEx doit disposer de privilèges d’administrateur sur l’ordinateur local.

Pour compiler une application qui utilise cette fonction, définissez _WIN32_WINNT comme 0x0500 ou version ultérieure. Pour plus d’informations, consultez Utilisation des en-têtes Windows.

Notes

L’en-tête sysinfoapi.h définit SetComputerNameEx comme un alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête sysinfoapi.h (inclure Windows.h)
Bibliothèque Kernel32.lib
DLL Kernel32.dll

Voir aussi

COMPUTER_NAME_FORMAT

Noms d’ordinateurs

DnsHostnameToComputerName

GetComputerName

GetComputerNameEx

SetComputerName

Fonctions d’information système