CryptCATAdminAcquireContext2-Funktion (mscat.h)

Die Funktion CryptCATAdminAcquireContext2 ruft ein Handle für einen Katalogadministratorkontext für einen bestimmten Hashalgorithmus und eine Hashrichtlinie ab.

Sie können dieses Handle in nachfolgenden Aufrufen der folgenden Funktionen verwenden:

Diese Funktion verfügt über keine zugeordnete Importbibliothek. Sie müssen die Funktionen LoadLibrary und GetProcAddress verwenden, um eine dynamische Verknüpfung mit Wintrust.dll.

Syntax

BOOL CryptCATAdminAcquireContext2(
  [out]          HCATADMIN               *phCatAdmin,
  [in, optional] const GUID              *pgSubsystem,
  [in, optional] PCWSTR                  pwszHashAlgorithm,
  [in, optional] PCCERT_STRONG_SIGN_PARA pStrongHashPolicy,
                 DWORD                   dwFlags
);

Parameter

[out] phCatAdmin

Ein Zeiger auf das Kontexthandle des Katalogadministrators, das von dieser Funktion zugewiesen wird. Wenn Sie die Verwendung des Handles abgeschlossen haben, schließen Sie es, indem Sie die Funktion CryptCATAdminReleaseContext aufrufen.

[in, optional] pgSubsystem

Ein Zeiger auf die GUID , die das Subsystem identifiziert. DRIVER_ACTION_VERIFY stellt das Subsystem für Betriebssystemkomponenten und Treiber von Drittanbietern dar. Dies ist das Subsystem, das von den meisten Implementierungen verwendet wird.

[in, optional] pwszHashAlgorithm

Optionale Unicode-Zeichenfolge mit Null-Beendigung, die den Namen des Hashalgorithmus angibt, der beim Berechnen und Überprüfen von Hashes verwendet werden soll. Dieser Wert kann NULL sein. Wenn es NULL ist, kann der Standardhashalgorithmus ausgewählt werden, abhängig vom Wert, den Sie für den pStrongHashPolicy-Parameter festgelegt haben. Der Standardalgorithmus in Windows 8 ist SHA1. Der Standardwert kann sich in zukünftigen Windows-Versionen ändern. Weitere Informationen finden Sie in den Hinweisen.

[in, optional] pStrongHashPolicy

Zeiger auf eine CERT_STRONG_SIGN_PARA-Struktur , die die Parameter enthält, die zum Überprüfen auf starke Signaturen verwendet werden. Die Funktion wählt den niedrigsten allgemeinen Hashingalgorithmus aus, der die angegebene Richtlinie und den algorithmus erfüllt, der durch den pwszHashAlgorithm-Parameter oder den Systemstandardalgorithmus angegeben wird (sofern kein Algorithmus angegeben ist).

dwFlags

Reserviert. Dieser Wert muss null (0) sein.

Rückgabewert

Wenn die Funktion erfolgreich ist, ist der Rückgabewert nonzero (TRUE).

Wenn die Funktion fehlschlägt, ist der Rückgabewert 0 (FALSE). Rufen Sie GetLastError auf, um erweiterte Fehlerinformationen zu erhalten.

In der folgenden Tabelle sind die Fehlercodes aufgeführt, die am häufigsten von der GetLastError-Funktion zurückgegeben werden.

Rückgabecode Beschreibung
ERROR_INVALID_PARAMETER
Der parameter phCatAdmin darf nicht NULL sein.

Der dwFlags-Parameter muss null (0) sein.

ERROR_NOT_ENOUGH_MEMORY
Es war nicht genügend Arbeitsspeicher vorhanden, um ein neues Katalogadministratorobjekt zu erstellen.
NTE_BAD_ALGID
Der durch den parameter pwszHashAlgorithm angegebene Hashalgorithmus kann nicht gefunden werden.

Hinweise

Mit dieser Funktion können Sie den Hashalgorithmus auswählen, der in Funktionen verwendet werden soll, die den Katalogadministratorkontext erfordern. Obwohl Sie den Namen des Hashingalgorithmus festlegen können, empfehlen wir Ihnen, den Algorithmus von der Funktion bestimmen zu lassen. Dies schützt Ihre Anwendung vor harten Codierungsalgorithmen, die in Zukunft möglicherweise nicht mehr vertrauenswürdig sind.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows 8 [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2012 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile mscat.h
Bibliothek Wintrust.lib
DLL Wintrust.dll

Weitere Informationen

CryptCATAdminAddCatalog

CryptCATAdminReleaseContext

CryptCATAdminRemoveCatalog