次の方法で共有


CredUIParseUserNameA 関数 (wincred.h)

CredUIParseUserName 関数は、完全修飾ユーザー名からドメインとユーザー アカウント名を抽出します。

構文

CREDUIAPI DWORD CredUIParseUserNameA(
  [in]  PCSTR userName,
  [out] CHAR  *user,
  [in]  ULONG userBufferSize,
  [out] CHAR  *domain,
  [in]  ULONG domainBufferSize
);

パラメーター

[in] userName

解析するユーザー名を含む null で終わる文字列へのポインター。 名前は UPN またはダウンレベルの形式、または証明書である必要があります。 通常、 pszUserNameCredUIPromptForCredentials または CredUICmdLinePromptForCredentials から受信されます。

[out] user

ユーザー アカウント名を受け取る null で終わる文字列へのポインター。

[in] userBufferSize

pszUser 文字列に書き込む最大文字数 (終端の null 文字を含む)。

メモ CREDUI_MAX_USERNAME_LENGTHには、終端の null 文字は含まれません。
 

[out] domain

ドメイン名を受け取る null で終わる文字列へのポインター。 pszUserName で証明書が指定されている場合、pszDomainNULL になります

[in] domainBufferSize

pszDomain 文字列に書き込む最大文字数 (終端の null 文字を含む)。

メモ CREDUI_MAX_DOMAIN_TARGET_LENGTHには、終端の null 文字は含まれません。
 

戻り値

この関数は、次を返します。

  • NO_ERROR

    ユーザー名は有効です。

  • ERROR_INVALID_ACCOUNT_NAME

    ユーザー名が無効です。

  • ERROR_INSUFFICIENT_BUFFER

    バッファーの 1 つが小さすぎます。

  • ERROR_INVALID_PARAMETER
    • ulUserMaxChars または ulDomainMaxChars は 0 です。
    • pszUserNamepszUser、または pszDomainNULL です

注釈

この関数は 、CredUIPromptForCredentials 関数と CredUICmdLinePromptForCredentials 関数によって返されるユーザー名情報を解析し、結果として得られる資格情報を、個別の文字列としてユーザー名とドメインを必要とする LogonUser などの関数に渡すことができるようにします。

次の形式がサポートされています。

  • <MarshalledCredentialReference>

    CredIsMarshaledCredential によって定義されたマーシャリングされた資格情報参照。 このような資格情報は 、User パラメーターで返されます。 Domain パラメーターは空の文字列に設定されています。

  • <DomainName>\<UserName>

    <UserName> は User パラメーターで返され、 <DomainName> は Domain パラメーターとして返されます。 UserName に円記号 (\) が含まれている場合、名前にはこの構文があると見なされます。

  • <UserName>@<DNSDomainName>

    文字列全体が User パラメーターで返されます。 Domain パラメーターは空の文字列に設定されています。 この構文では、文字列の最後の @ が使用 <されます。UserName> には @ を含めることができますが、 <DNSDomainName> は使用できないためです。

注意

wincred.h ヘッダーは CredUIParseUserName をエイリアスとして定義します。このエイリアスは、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択します。 エンコードに依存しないエイリアスをエンコードニュートラルでないコードと組み合わせて使用すると、コンパイルまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。

要件

要件
サポートされている最小のクライアント Windows XP (デスクトップ アプリのみ)
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー wincred.h
Library Credui.lib
[DLL] Credui.dll

こちらもご覧ください

CredIsMarshaledCredential

CredUICmdLinePromptForCredentials

CredUIPromptForCredentials

LogonUser