Función GetUserNameExA (secext.h)

Recupera el nombre del usuario u otra entidad de seguridad asociada al subproceso que llama. Puede especificar el formato del nombre devuelto.

Si el subproceso suplanta a un cliente, GetUserNameEx devuelve el nombre del cliente.

Sintaxis

BOOLEAN SEC_ENTRY GetUserNameExA(
  [in]      EXTENDED_NAME_FORMAT NameFormat,
  [out]     LPSTR                lpNameBuffer,
  [in, out] PULONG               nSize
);

Parámetros

[in] NameFormat

Formato del nombre. Este parámetro es un valor del tipo de enumeración EXTENDED_NAME_FORMAT . No puede ser NameUnknown. Si la cuenta de usuario no está en un dominio, solo se admite NameSamCompatible .

[out] lpNameBuffer

Puntero a un búfer que recibe el nombre en el formato especificado. El búfer debe incluir espacio para el carácter nulo de terminación.

[in, out] nSize

En la entrada, esta variable especifica el tamaño del búfer lpNameBuffer , en TCHAR. Si la función se realiza correctamente, la variable recibe el número de TCHAR copiados en el búfer, sin incluir el carácter nulo de terminación.

Si lpNameBuffer es demasiado pequeño, se produce un error en la función y GetLastError devuelve ERROR_MORE_DATA. Este parámetro recibe el tamaño de búfer necesario, en caracteres Unicode (si se usa o no Unicode), incluido el carácter nulo de terminación.

Valor devuelto

Si la función se ejecuta correctamente, el valor devuelto es un valor distinto de cero.

Si la función no se realiza correctamente, el valor devuelto es cero. Para obtener información de error extendida, llame a GetLastError. Estos son algunos de los valores posibles.

Código devuelto Descripción
ERROR_MORE_DATA
El búfer lpNameBuffer es demasiado pequeño. El parámetro lpnSize contiene el número de bytes necesarios para recibir el nombre.
ERROR_NO_SUCH_DOMAIN
El controlador de dominio no está disponible para realizar la búsqueda.
ERROR_NONE_MAPPED
El nombre de usuario no está disponible en el formato especificado.

Comentarios

Nota

El encabezado secext.h define GetUserNameEx como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.

Requisitos

   
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado secext.h (include Security.h)
Library Secur32.lib
Archivo DLL Secur32.dll

Consulte también

EXTENDED_NAME_FORMAT

LookupAccountName

Funciones de información del sistema