PFXExportCertStore-Funktion (wincrypt.h)

Die PFXExportCertStore-Funktion exportiert die Zertifikate und, sofern verfügbar, die zugeordneten privaten Schlüssel aus dem Zertifikatspeicher, auf den verwiesen wird. Dies ist eine alte Funktion, die zur Kompatibilität mit Internet Explorer 4.0-Clients beibehalten wird. Neue Anwendungen sollten die PfxExportCertStoreEx-Funktion verwenden, die erweiterte Sicherheit für private Schlüssel bietet.

Syntax

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

Parameter

[in] hStore

Handle des Zertifikatspeichers, der die zu exportierenden Zertifikate enthält.

[in, out] pPFX

Ein Zeiger auf eine CRYPT_DATA_BLOB Struktur, die das PFX-Paket mit den exportierten Zertifikaten und Schlüsseln enthält. Wenn pPFX-pbData>NULL ist, berechnet die Funktion die Anzahl der Bytes, die für das codierte BLOB benötigt werden, und gibt diese inpPFX-cbData> zurück. Wenn die Funktion aufgerufen wird, wobei pPFX-pbData> auf einen zugeordneten Puffer der erforderlichen Größe verweist, kopiert die Funktion die codierten Bytes in den Puffer und aktualisiert pPFX-cbData> mit der Codierungsbytelänge.

[in] szPassword

Zeichenfolgenkennwort, das zum Verschlüsseln und Überprüfen des PFX-Pakets verwendet wird. Wenn Sie das Kennwort verwendet haben, löschen Sie das Kennwort aus dem Arbeitsspeicher, indem Sie die SecureZeroMemory-Funktion aufrufen. Weitere Informationen zum Schutz von Kennwörtern finden Sie unter Behandeln von Kennwörtern.

[in] dwFlags

Flagwerte können auf eine beliebige Kombination der folgenden Werte festgelegt werden.

Wert Bedeutung
EXPORT_PRIVATE_KEYS
Private Schlüssel werden ebenso exportiert wie die Zertifikate.
REPORT_NO_PRIVATE_KEY
Wenn ein Zertifikat gefunden wird, das keinen zugeordneten privaten Schlüssel aufweist, gibt die Funktion FALSE zurück, wobei der letzte Fehler entweder auf CRYPT_E_NOT_FOUND oder NTE_NO_KEY festgelegt ist.
REPORT_NOT_ABLE_TO_EXPORT_PRIVATE_KEY
Wenn ein Zertifikat gefunden wird, das über einen nicht exportierbaren privaten Schlüssel verfügt, gibt die Funktion FALSE zurück, und der letzte Fehler wird auf NTE_BAD_KEY, NTE_BAD_KEY_STATE oder NTE_PERM festgelegt.

Rückgabewert

Gibt TRUE (nonzero) zurück, wenn die Funktion erfolgreich ist, und FALSE (null), wenn die Funktion fehlschlägt. Rufen Sie GetLastError auf, um erweiterte Fehlerinformationen zu erhalten.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows XP [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile wincrypt.h
Bibliothek Crypt32.lib
DLL Crypt32.dll

Weitere Informationen

PFXExportCertStoreEx

PFXImportCertStore