Compartilhar via


Função GetUserNameExW (secext.h)

Recupera o nome do usuário ou outra entidade de segurança associada ao thread de chamada. Você pode especificar o formato do nome retornado.

Se o thread estiver representando um cliente, GetUserNameEx retornará o nome do cliente.

Sintaxe

BOOLEAN SEC_ENTRY GetUserNameExW(
  [in]      EXTENDED_NAME_FORMAT NameFormat,
  [out]     LPWSTR               lpNameBuffer,
  [in, out] PULONG               nSize
);

Parâmetros

[in] NameFormat

O formato do nome. Esse parâmetro é um valor do tipo de enumeração EXTENDED_NAME_FORMAT. Não pode ser nameunknown. Se a conta de usuário não estiver em um domínio, somente NameSamCompatible.

[out] lpNameBuffer

Um ponteiro para um buffer que recebe o nome no formato especificado. O buffer deve incluir espaço para o caractere nulo de terminação.

[in, out] nSize

Na entrada, essa variável especifica o tamanho do buffer lpNameBuffer, em TCHARs. Se a função for bem-sucedida, a variável receberá o número de TCHARs copiados para o buffer, não incluindo o caractere nulo de terminação.

Se lpNameBuffer for muito pequena, a função falhará e GetLastError retornará ERROR_MORE_DATA. Esse parâmetro recebe o tamanho do buffer necessário, em caracteres Unicode (se o Unicode está sendo usado ou não), incluindo o caractere nulo de terminação.

Valor de retorno

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 valores possíveis incluem o seguinte.

Código de retorno Descrição
ERROR_MORE_DATA
O buffer lpNameBuffer é muito pequeno. O parâmetro lpnSize contém o número de bytes necessários para receber o nome.
ERROR_NO_SUCH_DOMAIN
O controlador de domínio não está disponível para executar a pesquisa
ERROR_NONE_MAPPED
O nome de usuário não está disponível no formato especificado.

Observações

Nota

O cabeçalho secext.h define GetUserNameEx 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. A combinação do uso do alias neutro de codificação com código que não é neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Conventions for Function Prototypes.

Requisitos

Requisito Valor
de cliente com suporte mínimo Windows 2000 Professional [somente aplicativos da área de trabalho]
servidor com suporte mínimo Windows 2000 Server [somente aplicativos da área de trabalho]
da Plataforma de Destino Windows
cabeçalho secext.h (inclua Security.h)
biblioteca Secur32.lib
de DLL Secur32.dll

Consulte também

EXTENDED_NAME_FORMAT

LookupAccountName

Funções de informações do sistema