CredMarshalCredentialA 函式 (wincred.h)
CredMarshalCredential 函式會將認證轉換成文字字串。 在過去,許多函式,例如 NetUseAdd、採用功能變數名稱、使用者名稱和密碼作為認證。 這些函式不接受憑證作為認證。 CredMarshalCredential 函式會將這類認證轉換成可傳遞至這些 API 的表單。
封送處理認證應該以用戶名稱字串的形式傳遞至目前通過認證的任何 API。 如果適用的話,傳遞至該 API 的功能變數名稱應該以 NULL 或空白的形式傳遞
呼叫端不應該修改或列印封送處理認證。 傳回的值可以在 Unicode、ANSI 和 OEM 字元集之間自由轉換。 字串會區分大小寫。
語法
BOOL CredMarshalCredentialA(
[in] CRED_MARSHAL_TYPE CredType,
[in] PVOID Credential,
[out] LPSTR *MarshaledCredential
);
參數
[in] CredType
要封送處理的認證類型。
[in] Credential
要封送處理的認證。
這是其中一個 CRED_MARSHAL_TYPE 值。
如果 CredType 是 CertCredential,Credential 會指向 CERT_CREDENTIAL_INFO 結構。
如果 CredTypeUsernameTargetCredential,Credential 指向 USERNAME_TARGET_CREDENTIAL_INFO 結構。
[out] MarshaledCredential
包含封送處理認證之 null終止字串的指標。 呼叫端應該使用 credFree 釋放傳回的緩衝區,。
傳回值
此函式會傳回成功 TRUE,並在失敗時 傳回 FALSE。 您可以呼叫 getLastError 函式
ERROR_INVALID_PARAMETER
CredType 無效。
言論
注意
wincred.h 標頭會根據 UNICODE 預處理器常數的定義,將 CredMarshalCredential 定義為自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | Windows XP [僅限傳統型應用程式] |
支援的最低伺服器 | Windows Server 2003 [僅限傳統型應用程式] |
目標平臺 | 窗戶 |
標頭 | wincred.h |
連結庫 | Advapi32.lib |
DLL | Advapi32.dll |