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, das das CNG-Objekt darstellt, für das der Eigenschaftswert abgerufen werden soll.
[in] pszProperty
Ein Zeiger auf eine mit NULL endende Unicode-Zeichenfolge, die den Namen der abzurufenden Eigenschaft enthält. Dies kann einer der vordefinierten Bezeichner von primitiven Kryptografieeigenschaften oder ein benutzerdefinierter Eigenschaftenbezeichner 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 der 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
Ein Satz von Flags, die das Verhalten dieser Funktion ändern. Für diese Funktion sind keine Flags definiert.
Rückgabewert
Gibt einen status Code zurück, der den Erfolg oder Fehler der Funktion angibt.
Mögliche Rückgabecodes sind u. a. die folgenden:
Rückgabecode | Beschreibung |
---|---|
|
Die Funktion war erfolgreich. |
|
Die vom cbOutput-Parameter angegebene Puffergröße ist nicht groß genug, um den Eigenschaftswert zu enthalten. |
|
Das Handle im hObject-Parameter ist ungültig. |
|
Mindestens ein Parameter ist ungültig. |
|
Die vom pszProperty-Parameter angegebene benannte Eigenschaft wird nicht unterstützt. |
Hinweise
Um die erforderliche Größe für eine Eigenschaft zu erhalten, übergeben Sie NULL für den pbOutput-Parameter . Diese Funktion platziert die erforderliche Größe in Byte in den 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. Aufrufer im Kernelmodus können entweder am PASSIVE_LEVELIRQL oder DISPATCH_LEVEL IRQL ausgeführt werden. Wenn die aktuelle IRQL-Ebene DISPATCH_LEVEL ist, müssen alle Zeiger, die an die BCryptGetProperty-Funktion übergeben werden, auf nicht ausseitigen (oder gesperrten) Arbeitsspeicher verweisen. Wenn das im hObject-Parameter angegebene Objekt ein Handle ist, muss es mit dem flag BCRYPT_PROV_DISPATCH 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: Verwenden Sie Ksecdd.lib, um diese Funktion im Kernelmodus aufzurufen.
Anforderungen
Anforderung | Wert |
---|---|
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 |