Condividi tramite


Funzione DnsHostnameToComputerNameA (winbase.h)

Converte un nome host in stile DNS in un nome computer di tipo NetBIOS.

Sintassi

BOOL DnsHostnameToComputerNameA(
  [in]      LPCSTR  Hostname,
  [out]     LPSTR   ComputerName,
  [in, out] LPDWORD nSize
);

Parametri

[in] Hostname

Nome DNS. Se il nome DNS non è un nome valido e traducibile, la funzione ha esito negativo. Per altre informazioni, vedere Nomi computer.

[out] ComputerName

Puntatore a un buffer che riceve il nome del computer. Le dimensioni del buffer devono essere sufficienti per contenere MAX_COMPUTERNAME_LENGTH + 1 caratteri.

[in, out] nSize

In input, specifica le dimensioni del buffer, in TCHAR. Nell'output, riceve il numero di TCHAR copiati nel buffer di destinazione, senza includere il carattere Null di terminazione.

Se il buffer è troppo piccolo, la funzione ha esito negativo, GetLastError restituisce ERROR_MORE_DATA e nSize riceve le dimensioni del buffer necessarie, senza includere il carattere Null di terminazione.

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. I valori possibili includono quanto segue.

Codice restituito Descrizione
ERROR_MORE_DATA
Il buffer ComputerName è troppo piccolo. Il parametro nSize contiene il numero di byte necessari per ricevere il nome.

Osservazioni

Questa funzione esegue un mapping testuale del nome. Questa convenzione limita i nomi dei computer come sottoinsieme comune dei nomi. In particolare, l'etichetta più a sinistra del nome DNS viene troncata a 15 byte di caratteri OEM. Pertanto, non usare questa funzione per convertire un nome di dominio DNS in un nome di dominio NetBIOS. Non esiste alcun mapping testuale per i nomi di dominio.

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 winbase.h definisce DnsHostnameToComputerName 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 winbase.h (include Windows.h)
libreria Kernel32.lib
dll Kernel32.dll

Vedere anche

GetComputerNameEx

SetComputerNameEx

funzioni di informazioni di sistema