CredUnprotectA 函式 (wincred.h)

CredUnprotect 函式會解密先前使用 CredProtect 函式加密的認證。 認證必須在呼叫 CredUnprotect 的相同安全性內容中加密。

語法

BOOL CredUnprotectA(
  [in]      BOOL  fAsSelf,
  [in]      LPSTR pszProtectedCredentials,
  [in]      DWORD cchProtectedCredentials,
  [out]     LPSTR pszCredentials,
  [in, out] DWORD *pcchMaxChars
);

參數

[in] fAsSelf

設定為 TRUE ,以指定認證已在目前進程的安全性內容中加密。 設定為 FALSE ,以指定在呼叫線程安全性內容的安全性內容中加密認證。

[in] pszProtectedCredentials

指定加密認證的字串指標。

[in] cchProtectedCredentials

pszProtectedCredentials 緩衝區的大小,以字元為單位。

[out] pszCredentials

在輸出中接收解密認證的字串指標。

[in, out] pcchMaxChars

大小,以 pszCredentials 緩衝區的字元為單位。 在輸出中,如果 pszCredentials 的大小不足以接收加密的認證,此參數會指定 pszCredentials 緩衝區所需的大小,以字元為單位。

傳回值

如果函式成功,則為TRUE;否則為 FALSE

如需擴充錯誤資訊,請呼叫 GetLastError 函式。 下表顯示 GetLastError 函式的常見值。

傳回碼/值 Description
ERROR_NOT_CAPABLE
用來加密認證的安全性內容與用來解密認證的安全性內容不同。
ERROR_INSUFFICIENT_BUFFER
pszCredentials 緩衝區的大小不足。

備註

注意

wincred.h 標頭會將 CredUnprotect 定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例

規格需求

需求
最低支援的用戶端 Windows Vista [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2008 [僅限傳統型應用程式]
目標平台 Windows
標頭 wincred.h
程式庫 Advapi32.lib
Dll Advapi32.dll