Freigeben über


BCryptQueryContextConfiguration-Funktion (bcrypt.h)

[BCryptQueryContextConfiguration ist für die Verwendung in den Betriebssystemen verfügbar, die im Abschnitt Anforderungen angegeben sind. Sie kann in nachfolgenden Versionen geändert oder nicht verfügbar sein.]

Die BCryptQueryContextConfiguration-Funktion ruft die aktuelle Konfiguration für den angegebenen CNG-Kontext ab.

Syntax

NTSTATUS BCryptQueryContextConfiguration(
  [in]      ULONG                 dwTable,
  [in]      LPCWSTR               pszContext,
  [in, out] ULONG                 *pcbBuffer,
  [in, out] PCRYPT_CONTEXT_CONFIG *ppBuffer
);

Parameter

[in] dwTable

Gibt die Konfigurationstabelle an, in der der Kontext vorhanden ist. Dies kann einer der folgenden Werte sein.

Wert Bedeutung
CRYPT_LOCAL
Der Kontext ist in der Konfigurationstabelle des lokalen Computers vorhanden.
CRYPT_DOMAIN
Dieser Wert steht nicht zur Verwendung zur Verfügung.

[in] pszContext

Ein Zeiger auf eine Unicode-Zeichenfolge mit NULL-Beendigung, die den Bezeichner des Kontexts enthält, für den die Konfigurationsinformationen abgerufen werden sollen.

[in, out] pcbBuffer

Die Adresse einer ULONG-Variablen , die bei einem Eintrag die Größe des Puffers in Bytes enthält, auf den ppBuffer verweist. Wenn diese Größe nicht groß genug ist, um die Kontextinformationen zu enthalten, schlägt diese Funktion mit STATUS_BUFFER_TOO_SMALL fehl.

Nachdem diese Funktion zurückgegeben wurde, enthält diese Variable die Anzahl der Bytes, die in den ppBuffer-Puffer kopiert wurden.

[in, out] ppBuffer

Die Adresse eines Zeigers auf eine CRYPT_CONTEXT_CONFIG Struktur, die die von dieser Funktion abgerufenen Kontextkonfigurationsinformationen empfängt. Der Wert, auf den der pcbBuffer-Parameter verweist, enthält die Größe dieses Puffers.

Wenn der Wert, auf den dieser Parameter verweist, NULL ist, weist diese Funktion den erforderlichen Arbeitsspeicher zu. Dieser Speicher muss freigegeben werden, wenn er nicht mehr benötigt wird, indem dieser Zeiger an die BCryptFreeBuffer-Funktion übergeben wird.

Wenn dieser Parameter NULL ist, platziert diese Funktion die erforderliche Größe in Bytes in der Variablen, auf die der pcbBuffer-Parameter verweist, und gibt STATUS_BUFFER_TOO_SMALL zurück.

Weitere Informationen zur Verwendung dieses Parameters finden Sie unter Hinweise.

Rückgabewert

Gibt einen status Code zurück, der den Erfolg oder Fehler der Funktion angibt.

Mögliche Rückgabecodes umfassen folgendes, sind aber nicht darauf beschränkt.

Rückgabecode Beschreibung
STATUS_SUCCESS
Die Funktion war erfolgreich.
STATUS_BUFFER_TOO_SMALL
Der ppBuffer-Parameter ist nicht NULL, und der Wert, auf den der pcbBuffer-Parameter verweist, ist nicht groß genug, um den Satz von Kontexten zu enthalten.
STATUS_INVALID_PARAMETER
Mindestens ein Parameter ist ungültig.
STATUS_NO_MEMORY
Ein Fehler bei der Speicherzuordnung ist aufgetreten.
STATUS_NOT_FOUND
Der angegebene Kontext konnte nicht gefunden werden.

Hinweise

Jeder Kontext verfügt nur über einen Satz Von Konfigurationsinformationen. Obwohl der ppBuffer-Parameter als Array verwendet wird, behandelt diese Funktion dies als Array mit nur einem Element. Im folgenden Beispiel wird erläutert, wie dieser Parameter verwendet wird.

// Get the configuration information for the context.
CRYPT_CONTEXT_CONFIG config;
ULONG uSize = sizeof(config);
PCRYPT_CONTEXT_CONFIG pConfig = &config;
status = BCryptQueryContextConfiguration(
    CRYPT_LOCAL, 
    pszContextID, 
    &uSize, 
    &pConfig);

BCryptQueryContextConfiguration kann nur im Benutzermodus aufgerufen werden.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile bcrypt.h
Bibliothek Bcrypt.lib
DLL Bcrypt.dll