Freigeben über


BCryptSetProperty-Funktion (bcrypt.h)

Die BCryptSetProperty--Funktion legt den Wert einer benannten Eigenschaft für ein CNG-Objekt fest.

Syntax

NTSTATUS BCryptSetProperty(
  [in, out] BCRYPT_HANDLE hObject,
  [in]      LPCWSTR       pszProperty,
  [in]      PUCHAR        pbInput,
  [in]      ULONG         cbInput,
  [in]      ULONG         dwFlags
);

Parameter

[in, out] hObject

Ein Handle, das das CNG-Objekt darstellt, für das der Eigenschaftswert festgelegt werden soll.

[in] pszProperty

Ein Zeiger auf eine mit Null beendete Unicode-Zeichenfolge, die den Namen der festzulegenden Eigenschaft enthält. Hierbei kann es sich um einen der vordefinierten Kryptografiegrundtyp-Eigenschaftsbezeichner oder um einen benutzerdefinierten Eigenschaftenbezeichner handeln.

[in] pbInput

Die Adresse eines Puffers, der den neuen Eigenschaftswert enthält. Der cbInput Parameter enthält die Größe dieses Puffers.

[in] cbInput

Die Größe des pbInput- Puffers in Byte.

[in] dwFlags

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

Rückgabewert

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

Mögliche Rückgabecodes umfassen, aber nicht beschränkt auf Folgendes.

Rückgabecode Beschreibung
STATUS_SUCCESS
Die Funktion war erfolgreich.
STATUS_INVALID_HANDLE
Das Handle im hObject--Parameter ist ungültig.
STATUS_INVALID_PARAMETER
Mindestens ein Parameter ist ungültig.
STATUS_NOT_SUPPORTED
Die vom pszProperty Parameter angegebene benannte Eigenschaft wird nicht unterstützt oder schreibgeschützt.

Bemerkungen

Je nachdem, welche Prozessormodi ein Anbieter unterstützt, kann BCryptSetProperty entweder über den Benutzermodus oder den Kernelmodus aufgerufen werden. Kernelmodusaufrufer können entweder PASSIVE_LEVELIRQL- oder DISPATCH_LEVEL IRQL ausgeführt werden. Wenn die aktuelle IRQL-Ebene DISPATCH_LEVEList, müssen alle Zeiger, die an BCryptSetProperty übergeben werden, auf nicht ausgestellten (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, das Teil des Driver Development Kit (DDK) ist. Windows Server 2008 und Windows Vista: Verwenden Sie Ksecdd.lib, um diese Funktion im Kernelmodus aufzurufen.

Beim Festlegen des Werts für die Eigenschaft BCRYPT_CHAINING_MODEwird der pbInput Parameter von cbInputungebunden. Der Aufrufer muss sicherstellen, dass eine gültige Unicode-Zeichenfolge mit Null beendet wird.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows Vista [Desktop-Apps | UWP-Apps]
mindestens unterstützte Server- Windows Server 2008 [Desktop-Apps | UWP-Apps]
Zielplattform- Fenster
Header- bcrypt.h
Library Bcrypt.lib
DLL- Bcrypt.dll