CredMarshalCredentialA 関数 (wincred.h)
CredMarshalCredential 関数は、資格情報をテキスト文字列に変換します。 これまで、 NetUseAdd などの多くの関数は、ドメイン名、ユーザー名、パスワードを資格情報として受け取ります。 これらの関数は、資格情報として証明書を受け入れられません。 CredMarshalCredential 関数は、このような資格情報を、これらの API に渡すことができる形式に変換します。
マーシャリングされた資格情報は、現在渡されている任意の API にユーザー名文字列として渡す必要があります。 該当する場合は、その API に渡されるドメイン名を NULL または空として渡す必要があります。 証明書の資格情報の場合は、証明書の PIN をパスワードとしてその API に渡す必要があります。
呼び出し元は、マーシャリングされた資格情報を変更または印刷しないでください。 戻り値は、Unicode、ANSI、OEM の文字セット間で自由に変換できます。 文字列では大文字と小文字が区別されます。
構文
BOOL CredMarshalCredentialA(
[in] CRED_MARSHAL_TYPE CredType,
[in] PVOID Credential,
[out] LPSTR *MarshaledCredential
);
パラメーター
[in] CredType
マーシャリングする資格情報の種類。
[in] Credential
マーシャリングする資格情報。
これは、 CRED_MARSHAL_TYPE 値の 1 つです。
CredType が CertCredential の場合、Credential はCERT_CREDENTIAL_INFO構造体を指します。
CredType が UsernameTargetCredential の場合、Credential はUSERNAME_TARGET_CREDENTIAL_INFO構造体を指します。
[out] MarshaledCredential
マーシャリングされた資格情報を含む null で終わる文字列へのポインター。 呼び出し元は CredFree を使用して、返されたバッファーを解放する必要があります。
戻り値
この関数は、成功した場合 は TRUE を返し、失敗した場合は FALSE を 返します。 GetLastError 関数を呼び出して、より具体的な状態コードを取得できます。 次の状態コードを返すことができます。
ERROR_INVALID_PARAMETER
CredType が無効です。
注釈
注意
wincred.h ヘッダーは CredMarshalCredential をエイリアスとして定義し、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択します。 encoding-neutral エイリアスの使用を encoding-neutral ではないコードと混在すると、コンパイル エラーまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows XP (デスクトップ アプリのみ) |
サポートされている最小のサーバー | Windows Server 2003 (デスクトップ アプリのみ) |
対象プラットフォーム | Windows |
ヘッダー | wincred.h |
Library | Advapi32.lib |
[DLL] | Advapi32.dll |