Condividi tramite


Funzione SetComputerNameExA (sysinfoapi.h)

Imposta un nuovo nome NetBIOS o DNS per il computer locale. Le modifiche ai nomi apportate da SetComputerNameEx non diventano effettive finché l'utente non riavvia il computer.

Sintassi

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

Parametri

[in] NameType

Tipo di nome da impostare. Questo parametro può essere uno dei valori seguenti del tipo di enumerazione COMPUTER_NAME_FORMAT.

Valore Significato
ComputerNamePhysicalDnsDomain
Imposta il suffisso DNS primario del computer.
ComputerNamePhysicalDnsHostname
Imposta NetBIOS e Il nome computer (la prima etichetta del nome DNS completo) sul nome specificato in lpBuffer. Se il nome supera MAX_COMPUTERNAME_LENGTH caratteri, il nome NetBIOS viene troncato a MAX_COMPUTERNAME_LENGTH caratteri, senza includere il carattere Null di terminazione.
ComputerNamePhysicalNetBIOS
Imposta il nome NetBIOS sul nome specificato in lpBuffer. Il nome non può superare MAX_COMPUTERNAME_LENGTH caratteri, senza includere il carattere null di terminazione.

Avviso: l'uso di questa opzione per impostare il nome NetBIOS interrompe la convenzione dei nomi NetBIOS e DNS interdipendenti. Le applicazioni che usano la funzione DnsHostnameToComputerName per derivare il nome NetBIOS dalla prima etichetta del nome DNS avranno esito negativo se questa convenzione è interrotta.

[in] lpBuffer

Nuovo nome. Il nome non può includere caratteri di controllo, spazi iniziali o finali o uno dei caratteri seguenti: " / \ [ ] : | <> + = ; , ?

Valore restituito

Se la funzione ha esito positivo, il valore restituito è un valore diverso da zero.

Se la funzione ha esito negativo, il valore restituito è zero. Per ottenere informazioni estese sull'errore, chiamare GetLastError.

Osservazioni

SetComputerNameEx può impostare il nome computer (la prima etichetta del nome DNS completo) o il suffisso DNS primario del computer locale. Non può impostare un nome DNS completo in una sola chiamata.

Se il computer locale è un nodo in un cluster, SetComputerNameEx imposta NetBIOS o il nome DNS del computer locale, non quello del server virtuale del cluster.

Il processo che chiama la funzione SetComputerNameEx deve disporre dei privilegi di amministratore nel computer locale.

Per compilare un'applicazione che usa questa funzione, definire _WIN32_WINNT come 0x0500 o versione successiva. Per altre informazioni, vedere Uso delle intestazioni di Windows.

Nota

L'intestazione sysinfoapi.h definisce SetComputerNameEx come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.

Fabbisogno

Requisito Valore
client minimo supportato Windows 2000 Professional [solo app desktop]
server minimo supportato Windows 2000 Server [solo app desktop]
piattaforma di destinazione Finestre
intestazione sysinfoapi.h (include Windows.h)
libreria Kernel32.lib
dll Kernel32.dll

Vedere anche

COMPUTER_NAME_FORMAT

nomi computer

DnsHostnameToComputerName

GetComputerName

GetComputerNameEx

SetComputerName

funzioni di informazioni di sistema