次の方法で共有


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 または下位レベルの形式、または証明書である必要があります。 通常、pszUserName は、CredUIPromptForCredentials または credUICmdLinePromptForCredentialsから受信されます。

[out] user

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

[in] userBufferSize

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

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

[out] domain

ドメイン名を受け取る null-terminated 文字列へのポインター。 pszUserName が証明書を指定 場合、pszDomain は NULLされます。

[in] domainBufferSize

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

null 文字の終端 CREDUI_MAX_DOMAIN_TARGET_LENGTH は含まれません。
 

戻り値

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

  • NO_ERROR

    ユーザー名は有効です。

  • ERROR_INVALID_ACCOUNT_NAME

    ユーザー名が無効です。

  • ERROR_INSUFFICIENT_BUFFER

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

  • ERROR_INVALID_PARAMETER
    • ulUserMaxChars または ulDomainMaxChars 0 です。
    • pszUserName、pszUser、または pszDomain は NULL

備考

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

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

  • <MarshalledCredentialReference>

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

  • <DomainName>\<UserName>

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

  • <UserName>@<DNSDomainName>

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

手記

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

必要条件

要件 価値
サポートされる最小クライアント Windows XP [デスクトップ アプリのみ]
サポートされる最小サーバー Windows Server 2003 [デスクトップ アプリのみ]
ターゲット プラットフォーム の ウィンドウズ
ヘッダー wincred.h
ライブラリ Credui.lib
DLL Credui.dll

関連項目

CredIsMarshaledCredential の

CredUICmdLinePromptForCredentials の

CredUIPromptForCredentials の

LogonUser