CredUIParseUserNameA-Funktion (wincred.h)
Die CredUIParseUserName-Funktion extrahiert den Domänen- und Benutzerkontonamen aus einem vollqualifizierten Benutzernamen.
Syntax
CREDUIAPI DWORD CredUIParseUserNameA(
[in] PCSTR userName,
[out] CHAR *user,
[in] ULONG userBufferSize,
[out] CHAR *domain,
[in] ULONG domainBufferSize
);
Parameter
[in] userName
Zeigen Sie auf eine NULL--terminated-Zeichenfolge, die den zu analysierenden Benutzernamen enthält. Der Name muss im UPN- oder Down-Level-Format oder in einem Zertifikat vorliegen. In der Regel wird pszUserName von der CredUIPromptForCredentials oder CredUICmdLinePromptForCredentialsempfangen.
[out] user
Zeigen Sie auf eine NULL--terminated-Zeichenfolge, die den Benutzernamen empfängt.
[in] userBufferSize
Maximale Anzahl von Zeichen, die in die pszUser- Zeichenfolge geschrieben werden sollen, einschließlich des endenden Null- Zeichens.
[out] domain
Zeigen Sie auf eine NULL--terminated-Zeichenfolge, die den Domänennamen empfängt. Wenn pszUserName ein Zertifikat angibt, wird pszDomain-NULL-.
[in] domainBufferSize
Maximale Anzahl von Zeichen, die in die pszDomain--Zeichenfolge geschrieben werden sollen, einschließlich des endenden NULL- Zeichens.
Rückgabewert
Diese Funktion gibt Folgendes zurück:
- NO_ERROR
Der Benutzername ist gültig.
- ERROR_INVALID_ACCOUNT_NAME
Der Benutzername ist ungültig.
- ERROR_INSUFFICIENT_BUFFER
Einer der Puffer ist zu klein.
- ERROR_INVALID_PARAMETER
- ulUserMaxChars oder ulDomainMaxChars ist null.
- pszUserName, pszUseroder pszDomain ist NULL.
Bemerkungen
Diese Funktion analysiert die vom CredUIPromptForCredentials und CredUICmdLinePromptForCredentials Funktionen zurückgegebenen Benutzernamen, sodass die resultierenden Anmeldeinformationen an Funktionen wie LogonUser-übergeben werden können, die den Benutzernamen und die Domäne als separate Zeichenfolgen erfordern.
Die folgenden Formate werden unterstützt:
-
<MarshalledCredentialReference->
Marshaled credential reference as defined by CredIsMarshaledCredential. Eine solche Anmeldeinformation wird im parameter User zurückgegeben. Der parameter Domain wird auf eine leere Zeichenfolge festgelegt.
-
<DomainName>\<UserName>
<UserName-> wird im Parameter User zurückgegeben, und der <DomainName-> wird zurückgegeben, ist der parameter Domain. Der Name wird als Syntax betrachtet, wenn der UserName- einen umgekehrten Schrägstrich (\) enthält.
-
<UserName>@<DNSDomainName>
Die gesamte Zeichenfolge wird im parameter User zurückgegeben. Der parameter Domain wird auf eine leere Zeichenfolge festgelegt. Für diese Syntax wird das letzte @in der Zeichenfolge verwendet, da <UserName-> ein @ enthalten kann, aber <DNSDomainName> nicht.
Anmerkung
Der wincred.h-Header definiert CredUIParseUserName als Alias, der automatisch die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Windows XP [nur Desktop-Apps] |
mindestens unterstützte Server- | Windows Server 2003 [Nur Desktop-Apps] |
Zielplattform- | Fenster |
Header- | wincred.h |
Library | Credui.lib |
DLL- | Credui.dll |