BCryptGetProperty-Funktion (bcrypt.h)

Die BCryptGetProperty-Funktion ruft den Wert einer benannten Eigenschaft für ein CNG-Objekt ab.

Syntax

NTSTATUS BCryptGetProperty(
  [in]  BCRYPT_HANDLE hObject,
  [in]  LPCWSTR       pszProperty,
  [out] PUCHAR        pbOutput,
  [in]  ULONG         cbOutput,
  [out] ULONG         *pcbResult,
  [in]  ULONG         dwFlags
);

Parameter

[in] hObject

Ein Handle, der das CNG-Objekt darstellt, um den Eigenschaftswert abzurufen.

[in] pszProperty

Ein Zeiger auf eine null-beendete Unicode-Zeichenfolge, die den Namen der abzurufenden Eigenschaft enthält. Dies kann eine der vordefinierten Kryptografie-Grundeigenschaftsbezeichner oder eine benutzerdefinierte Eigenschaftsbezeichner sein.

[out] pbOutput

Die Adresse eines Puffers, der den Eigenschaftswert empfängt. Der cbOutput-Parameter enthält die Größe dieses Puffers.

[in] cbOutput

Die Größe des PbOutput-Puffers in Bytes.

[out] pcbResult

Ein Zeiger auf eine ULONG-Variable , die die Anzahl von Bytes empfängt, die in den PbOutput-Puffer kopiert wurden. Wenn der PbOutput-ParameterNULL ist, platziert diese Funktion die erforderliche Größe in Bytes an der Position, auf die dieser Parameter verweist.

[in] dwFlags

Eine Reihe von Flags, die das Verhalten dieser Funktion ändern. Für diese Funktion werden keine Flags definiert.

Rückgabewert

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

Mögliche Rückgabecodes sind enthalten, aber nicht auf folgendes beschränkt sind.

Rückgabecode Beschreibung
STATUS_SUCCESS
Die Funktion war erfolgreich.
STATUS_BUFFER_TOO_SMALL
Die durch den cbOutput-Parameter angegebene Puffergröße ist nicht groß genug, um den Eigenschaftswert zu halten.
STATUS_INVALID_HANDLE
Der Handle im hObject-Parameter ist ungültig.
STATUS_INVALID_PARAMETER
Mindestens ein Parameter ist ungültig.
STATUS_NOT_SUPPORTED
Die benannte Eigenschaft, die vom pszProperty-Parameter angegeben wird, wird nicht unterstützt.

Hinweise

Um die erforderliche Größe für eine Eigenschaft abzurufen, übergeben Sie NULL für den PbOutput-Parameter . Diese Funktion platziert die erforderliche Größe in Bytes im Wert, auf den der PcbResult-Parameter verweist.

Je nachdem, welche Prozessormodi ein Anbieter unterstützt, kann BCryptGetProperty entweder über den Benutzermodus oder den Kernelmodus aufgerufen werden. Kernelmodusanrufer können entweder bei PASSIVE_LEVELIRQL oder DISPATCH_LEVEL IRQL ausgeführt werden. Wenn die aktuelle IRQL-Ebene DISPATCH_LEVEL ist, müssen zeiger, die an die BCryptGetProperty-Funktion übergeben wurden, auf nichtpageten (oder gesperrten) Speicher verweisen. Wenn das im hObject-Parameter angegebene Objekt ein Handle ist, muss es mithilfe des BCRYPT_PROV_DISPATCH-Flags geöffnet worden sein.

Um diese Funktion im Kernelmodus aufzurufen, verwenden Sie Cng.lib, die Teil des Driver Development Kit (DDK) ist. Windows Server 2008 und Windows Vista: Um diese Funktion im Kernelmodus aufzurufen, verwenden Sie Ksecdd.lib.

Anforderungen

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