Share via


Função DnsHostnameToComputerNameA (winbase.h)

Converte um nome de host no estilo DNS em um nome de computador no estilo NetBIOS.

Sintaxe

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

Parâmetros

[in] Hostname

O nome DNS. Se o nome DNS não for um nome válido e traduzível, a função falhará. Para obter mais informações, consulte Nomes de computador.

[out] ComputerName

Um ponteiro para um buffer que recebe o nome do computador. O tamanho do buffer deve ser grande o suficiente para conter MAX_COMPUTERNAME_LENGTH + 1 caracteres.

[in, out] nSize

Na entrada, especifica o tamanho do buffer, em TCHARs. Na saída, recebe o número de TCHARs copiados para o buffer de destino, não incluindo o caractere nulo de terminação.

Se o buffer for muito pequeno, a função falhará, GetLastError retornará ERROR_MORE_DATA e nSize receberá o tamanho do buffer necessário, sem incluir o caractere nulo de terminação.

Retornar valor

Se a função for bem-sucedida, o valor retornado será um valor diferente de zero.

Se a função falhar, o valor retornado será zero. Para obter informações de erro estendidas, chame GetLastError. Os possíveis valores incluem os seguintes.

Código de retorno Descrição
ERROR_MORE_DATA
O buffer ComputerName é muito pequeno. O parâmetro nSize contém o número de bytes necessários para receber o nome.

Comentários

Essa função executa um mapeamento textual do nome. Essa convenção limita os nomes dos computadores a serem o subconjunto comum dos nomes. (Especificamente, o rótulo mais à esquerda do nome DNS é truncado para 15 bytes de caracteres OEM.) Portanto, não use essa função para converter um nome de domínio DNS em um nome de domínio NetBIOS. Não há mapeamento textual para nomes de domínio.

Para compilar um aplicativo que usa essa função, defina _WIN32_WINNT como 0x0500 ou posterior. Para obter mais informações, consulte Usando os cabeçalhos do Windows.

Observação

O cabeçalho winbase.h define DnsHostnameToComputerName como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante de pré-processador UNICODE. Misturar o uso do alias neutro de codificação com código que não seja neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Convenções para protótipos de função.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho winbase.h (incluir Windows.h)
Biblioteca Kernel32.lib
DLL Kernel32.dll

Confira também

GetComputerNameEx

SetComputerNameEx

Funções de informações do sistema