Función CredUIParseUserNameA (wincred.h)
La función CredUIParseUserName extrae el nombre de dominio y cuenta de usuario de un nombre de usuario completo.
Sintaxis
CREDUIAPI DWORD CredUIParseUserNameA(
[in] PCSTR userName,
[out] CHAR *user,
[in] ULONG userBufferSize,
[out] CHAR *domain,
[in] ULONG domainBufferSize
);
Parámetros
[in] userName
Puntero a un cadenaterminada en null que contiene el nombre de usuario que se va a analizar. El nombre debe estar en formato UPN o de nivel descendente o en un certificado. Normalmente, se recibe pszUserName de la CredUIPromptForCredentials o CredUICmdLinePromptForCredentials.
[out] user
Puntero a un cadena terminada en nullque recibe el nombre de la cuenta de usuario.
[in] userBufferSize
Número máximo de caracteres que se van a escribir en la cadena de pszUser, incluida la terminación carácter nulo.
[out] domain
Puntero a un cadena terminada en nullque recibe el nombre de dominio. Si pszUserName especifica un certificado, pszDomain se NULL.
[in] domainBufferSize
Número máximo de caracteres que se van a escribir en la cadena de pszDomain, incluida la terminación carácter null.
Valor devuelto
Esta función devuelve lo siguiente:
- NO_ERROR
El nombre de usuario es válido.
- ERROR_INVALID_ACCOUNT_NAME
El nombre de usuario no es válido.
- ERROR_INSUFFICIENT_BUFFER
Uno de los búferes es demasiado pequeño.
- ERROR_INVALID_PARAMETER
- ulUserMaxChars o ulDomainMaxChars es cero.
- pszUserName, pszUser, o pszDomain es NULL.
Observaciones
Esta función analiza la información de nombre de usuario devuelta por las funciones CredUIPromptForCredential s y CredUICmdLinePromptForCredentials funciones para que las credenciales resultantes se puedan pasar a funciones, como LogonUser, que requieren el nombre de usuario y el dominio como cadenas independientes.
Se admiten los siguientes formatos:
-
<MarshalledCredentialReference>
Referencia de credenciales serialadas definida por CredIsMarshaledCredential. Dicha credencial se devuelve en el parámetro usuario de
. El parámetro dominioestá establecido en una cadena vacía. -
<DomainName>\<UserName>
UserName se devuelve en el parámetro user y se devuelve el DomainName de es el parámetro Domain . El nombre se considera que tiene esta sintaxis si el UserName contiene una barra diagonal inversa (\). -
<UserName>@<DNSDomainName>
La cadena completa se devuelve en el parámetro User. El parámetro dominio
está establecido en una cadena vacía. Para esta sintaxis, se usa la última @ de la cadena porque <UserName> puede contener un @ pero <DNSDomainName> no.
Nota
El encabezado wincred.h define CredUIParseUserName 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 Conventions for Function Prototypes.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Windows XP [solo aplicaciones de escritorio] |
servidor mínimo admitido | Windows Server 2003 [solo aplicaciones de escritorio] |
de la plataforma de destino de |
Windows |
encabezado de |
wincred.h |
biblioteca de |
Credui.lib |
DLL de |
Credui.dll |