Fungsi CredMarshalCredentialA (wincred.h)

Fungsi CredMarshalCredential mengubah kredensial menjadi string teks. Secara historis, banyak fungsi, seperti NetUseAdd, mengambil nama domain, nama pengguna, dan kata sandi sebagai kredensial. Fungsi-fungsi ini tidak menerima sertifikat sebagai kredensial. Fungsi CredMarshalCredential mengonversi kredensial tersebut menjadi formulir yang dapat diteruskan ke API ini.

Kredensial marshaled harus diteruskan sebagai string nama pengguna ke API apa pun yang saat ini melewati kredensial. Nama domain, jika berlaku, diteruskan ke API tersebut harus diteruskan sebagai NULL atau kosong. Untuk kredensial sertifikat, PIN sertifikat harus diteruskan ke API tersebut sebagai kata sandi.

Pemanggil tidak boleh mengubah atau mencetak kredensial marshal. Nilai yang dikembalikan dapat dikonversi secara bebas antara set karakter Unicode, ANSI, dan OEM. String peka huruf besar/kecil.

Sintaks

BOOL CredMarshalCredentialA(
  [in]  CRED_MARSHAL_TYPE CredType,
  [in]  PVOID             Credential,
  [out] LPSTR             *MarshaledCredential
);

Parameter

[in] CredType

Jenis kredensial ke marshal.

[in] Credential

Kredensial ke Marshal.

Ini adalah salah satu nilai CRED_MARSHAL_TYPE .

Jika CredType adalah CertCredential, Kredensial menunjuk ke struktur CERT_CREDENTIAL_INFO .

Jika CredType adalah UsernameTargetCredential, Kredensial menunjuk ke struktur USERNAME_TARGET_CREDENTIAL_INFO .

[out] MarshaledCredential

Penunjuk ke string null-terminated yang berisi kredensial marshaled. Pemanggil harus membebaskan buffer yang dikembalikan menggunakan CredFree.

Nilai kembali

Fungsi ini mengembalikan TRUE pada keberhasilan dan FALSE pada kegagalan. Fungsi GetLastError dapat dipanggil untuk mendapatkan kode status yang lebih spesifik. Kode status berikut dapat dikembalikan:

ERROR_INVALID_PARAMETER

CredType tidak valid.

Keterangan

Catatan

Header wincred.h mendefinisikan CredMarshalCredential sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta pra-prosesor UNICODE. Mencampur penggunaan alias encoding-netral dengan kode yang tidak mengodekan-netral dapat menyebabkan ketidakcocokan yang mengakibatkan kesalahan kompilasi atau runtime. Untuk informasi selengkapnya, lihat Konvensi untuk Prototipe Fungsi.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows XP [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2003 [hanya aplikasi desktop]
Target Platform Windows
Header wincred.h
Pustaka Advapi32.lib
DLL Advapi32.dll

Lihat juga

CERT_CREDENTIAL_INFO

CRED_MARSHAL_TYPE

CredFree

CredUnmarshalCredential

GetLastError

USERNAME_TARGET_CREDENTIAL_INFO