Share via


PFXExportCertStore 函式 (wincrypt.h)

PFXExportCertStore 函式會匯出憑證,如果可用,則會從參考的證書存儲匯出相關聯的私鑰。 這是與 Internet Explorer 4.0 用戶端相容而保留的舊函式。 新的應用程式應該使用 PfxExportCertStoreEx 函式,以提供增強的私鑰安全性。

語法

BOOL PFXExportCertStore(
  [in]      HCERTSTORE      hStore,
  [in, out] CRYPT_DATA_BLOB *pPFX,
  [in]      LPCWSTR         szPassword,
  [in]      DWORD           dwFlags
);

參數

[in] hStore

包含要匯出之憑證的證書存儲句柄。

[in, out] pPFX

要包含具有導出憑證和密鑰之 PFX 封包之 CRYPT_DATA_BLOB 結構的指標。 如果 pPFX-pbData> 為 NULL,函式會計算編碼 BLOB 所需的位元元組數目,並在pPFX-cbData> 中傳回此值。 使用 pPFX-pbData> 呼叫函式時,指向所需大小的已配置緩衝區時,函式會將編碼的位元組複製到緩衝區,並以編碼位元組長度更新pPFX-cbData>

[in] szPassword

用來加密和驗證 PFX 封包的字串密碼。 當您完成使用密碼時,請呼叫 SecureZeroMemory 函式 ,從記憶體清除密碼。 如需保護密碼的詳細資訊,請參閱 處理密碼

[in] dwFlags

旗標值可以設定為下列任何組合。

意義
EXPORT_PRIVATE_KEYS
私鑰會匯出以及憑證。
REPORT_NO_PRIVATE_KEY
如果遇到沒有相關聯私鑰的憑證,則函式會傳回 FALSE ,並將最後一個錯誤設定為 CRYPT_E_NOT_FOUND 或 NTE_NO_KEY。
REPORT_NOT_ABLE_TO_EXPORT_PRIVATE_KEY
如果遇到具有不可匯出私鑰的憑證,則函式會傳回 FALSE ,並將最後一個錯誤設定為 NTE_BAD_KEY、NTE_BAD_KEY_STATE 或 NTE_PERM。

傳回值

如果函式成功,則傳回 TRUE (非零) ,如果函式失敗,則傳回 FALSE (零) 。 如需擴充錯誤資訊,請呼叫 GetLastError

規格需求

需求
最低支援的用戶端 Windows XP [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器 Windows Server 2003 [傳統型應用程式 |UWP 應用程式]
目標平台 Windows
標頭 wincrypt.h
程式庫 Crypt32.lib
Dll Crypt32.dll

另請參閱

PFXExportCertStoreEx

PFXImportCertStore