Função CredUIParseUserNameW (wincred.h)
A função CredUIParseUseUserName extrai o nome de conta de usuário e domínio de um nome de usuário totalmente qualificado.
Sintaxe
CREDUIAPI DWORD CredUIParseUserNameW(
[in] PCWSTR UserName,
[out] WCHAR *user,
[in] ULONG userBufferSize,
[out] WCHAR *domain,
[in] ULONG domainBufferSize
);
Parâmetros
[in] UserName
Ponteiro para um cadeia de caracteresterminada nula que contém o nome de usuário a ser analisado. O nome deve estar no formato UPN ou no nível inferior ou em um certificado. Normalmente,
[out] user
Ponteiro para um cadeia de caracteresterminada nula que recebe o nome da conta de usuário.
[in] userBufferSize
Número máximo de caracteres a serem gravados na cadeia de caracteres de pszUser, incluindo a terminação caractere de nulo.
[out] domain
Ponteiro para um cadeia de caracteresterminada nula que recebe o nome de domínio. Se pszUserName especificar um certificado, pszDomain será NULL.
[in] domainBufferSize
Número máximo de caracteres a serem gravados na cadeia de caracteres de pszDomain
Valor de retorno
Essa função retorna o seguinte:
- NO_ERROR
O nome de usuário é válido.
- ERROR_INVALID_ACCOUNT_NAME
O nome de usuário não é válido.
- ERROR_INSUFFICIENT_BUFFER
Um dos buffers é muito pequeno.
- ERROR_INVALID_PARAMETER
- ulUserMaxChars ou ulDomainMaxChars é zero.
- pszUserName, pszUserou pszDomain é NULL.
Observações
Essa função analisa as informações de nome de usuário retornadas pelas funções CredUIPromptForCredentials e CredUICmdLinePromptForCredentials para que as credenciais resultantes possam ser passadas para funções, como LogonUser, que exigem o nome de usuário e o domínio como cadeias de caracteres separadas.
Há suporte para os seguintes formatos:
-
> MarshalledCredentialReference <
Referência de credencial marshalada, conforme definido por CredIsMarshaledCredential. Essa credencial é retornada no parâmetro User. O parâmetro Domain é definido como uma cadeia de caracteres vazia.
-
<DomainName>\<UserName>
< > UserName é retornado no parâmetro User e o <DomainName> é retornado é o parâmetro Domain. O nome será considerado com essa sintaxe se o UserName contiver uma barra invertida (\).
-
<UserName>@<> DNSDomainName
A cadeia de caracteres inteira é retornada no parâmetro User. O parâmetro Domain é definido como uma cadeia de caracteres vazia. Para essa sintaxe, o último @ na cadeia de caracteres é usado porque <> username pode conter um @ mas <DNSDomainName> não pode.
Nota
O cabeçalho wincred.h define CredUIParseUserName como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante do 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 XP [somente aplicativos da área de trabalho] |
servidor com suporte mínimo | Windows Server 2003 [somente aplicativos da área de trabalho] |
da Plataforma de Destino |
Windows |
cabeçalho | wincred.h |
biblioteca | Credui.lib |
de DLL |
Credui.dll |