Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Converte um IDN (nome de domínio internacionalizado) ou outro rótulo internacionalizado no formulário NamePrep especificado pelo Grupo de Trabalho de Rede RFC 3491, mas não executa a conversão adicional para Punycode. Para obter mais informações e links para padrões de rascunho relacionados, consulte Manipulando IDNs (Nomes de Domínio Internacionalizados).
Sintaxe
int IdnToNameprepUnicode(
[in] DWORD dwFlags,
[in] LPCWSTR lpUnicodeCharStr,
[in] int cchUnicodeChar,
[out, optional] LPWSTR lpNameprepCharStr,
[in] int cchNameprepChar
);
Parâmetros
[in] dwFlags
Sinalizadores especificando opções de conversão. Para obter definições detalhadas, consulte o parâmetro dwFlags de IdnToAscii.
[in] lpUnicodeCharStr
Ponteiro para uma cadeia de caracteres Unicode que representa um IDN ou outro rótulo internacionalizado.
[in] cchUnicodeChar
Contagem de caracteres Unicode na cadeia de caracteres Unicode de entrada indicada por lpUnicodeCharStr.
[out, optional] lpNameprepCharStr
Ponteiro para um buffer que recebe uma versão da cadeia de caracteres Unicode de entrada convertida por meio do processamento NamePrep. Como alternativa, a função poderá recuperar NULL para esse parâmetro, se cchNameprepChar estiver definido como 0. Nesse caso, a função retorna o tamanho necessário para esse buffer.
[in] cchNameprepChar
Tamanho, em caracteres, do buffer indicado por lpNameprepCharStr. O aplicativo pode definir o tamanho como 0 para recuperar NULL em lpNameprepCharStr e fazer com que a função retorne o tamanho do buffer necessário.
Valor retornado
Retorna o número de caracteres recuperados em lpNameprepCharStr se tiver êxito. A cadeia de caracteres recuperada será terminada em nulo somente se a cadeia de caracteres Unicode de entrada for terminada em nulo.
Se a função for bem-sucedida e o valor de cchNameprepChar for 0, a função retornará o tamanho necessário, em caracteres incluindo um caractere nulo de terminação se ele fizer parte do buffer de entrada.
A função retornará 0 se não for bem-sucedida. Para obter informações de erro estendidas, o aplicativo pode chamar GetLastError, que pode retornar um dos seguintes códigos de erro:
- ERROR_INSUFFICIENT_BUFFER. Um tamanho de buffer fornecido não era grande o suficiente ou foi definido incorretamente como NULL.
- ERROR_INVALID_FLAGS. Os valores fornecidos para sinalizadores não eram válidos.
- ERROR_INVALID_NAME. Um nome inválido foi fornecido à função . Observe que esse código de erro captura todos os erros de sintaxe.
- ERROR_INVALID_PARAMETER. Qualquer um dos valores de parâmetro era inválido.
- ERROR_NO_UNICODE_TRANSLATION. Unicode inválido foi encontrado em uma cadeia de caracteres.
Comentários
Consulte Comentários para IdnToAscii.
Exemplos
NLS: Exemplo de conversão de IDN (Nome de Domínio Internacionalizado) demonstra o uso dessa função.
Requisitos
Cliente mínimo com suporte | Windows Vista [aplicativos da área de trabalho | Aplicativos UWP] |
Servidor mínimo com suporte | Windows Server 2008 [aplicativos da área de trabalho | Aplicativos UWP] |
Plataforma de Destino | Windows |
Cabeçalho | winnls.h (inclua Windows.h) |
Biblioteca | Normaliz.lib |
DLL | Normaliz.dll |
Redistribuível | APIs de mitigação do IDN (Nome de Domínio Internacionalizado) da Microsoft noWindows XP com SP2 e posterior, ouWindows Server 2003 com SP1 |