Funzione BCryptGetProperty (bcrypt.h)

La funzione BCryptGetProperty recupera il valore di una proprietà denominata per un oggetto CNG.

Sintassi

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

Parametri

[in] hObject

Handle che rappresenta l'oggetto CNG per ottenere il valore della proprietà.

[in] pszProperty

Puntatore a una stringa Unicode con terminazione null contenente il nome della proprietà da recuperare. Può trattarsi di uno degli identificatori di proprietà primitive di crittografia predefiniti o di un identificatore di proprietà personalizzato.

[out] pbOutput

Indirizzo di un buffer che riceve il valore della proprietà. Il parametro cbOutput contiene le dimensioni di questo buffer.

[in] cbOutput

Dimensioni, in byte, del buffer pbOutput .

[out] pcbResult

Puntatore a una variabile ULONG che riceve il numero di byte copiati nel buffer pbOutput . Se il parametro pbOutput è NULL, questa funzione inserisce le dimensioni necessarie, in byte, nella posizione a cui punta questo parametro.

[in] dwFlags

Set di flag che modificano il comportamento di questa funzione. Per questa funzione non sono definiti flag.

Valore restituito

Restituisce un codice di stato che indica l'esito positivo o negativo della funzione.

I codici restituiti possibili includono, ma non sono limitati a, i seguenti.

Codice restituito Descrizione
STATUS_SUCCESS
La funzione ha avuto esito positivo.
STATUS_BUFFER_TOO_SMALL
Le dimensioni del buffer specificate dal parametro cbOutput non sono sufficienti per contenere il valore della proprietà.
STATUS_INVALID_HANDLE
L'handle nel parametro hObject non è valido.
STATUS_INVALID_PARAMETER
Uno o più parametri non sono validi.
STATUS_NOT_SUPPORTED
La proprietà denominata specificata dal parametro pszProperty non è supportata.

Commenti

Per ottenere le dimensioni necessarie per una proprietà, passare NULL per il parametro pbOutput . Questa funzione inserisce le dimensioni necessarie, in byte, nel valore a cui punta il parametro pcbResult .

A seconda delle modalità di processore supportate da un provider, È possibile chiamare BCryptGetProperty dalla modalità utente o dalla modalità kernel. I chiamanti in modalità kernel possono essere eseguiti in PASSIVE_LEVELIRQL o DISPATCH_LEVEL IRQL. Se il livello IRQL corrente è DISPATCH_LEVEL, tutti i puntatori passati alla funzione BCryptGetProperty devono fare riferimento a memoria non paginata (o bloccata). Se l'oggetto specificato nel parametro hObject è un handle, deve essere stato aperto usando il flag BCRYPT_PROV_DISPATCH .

Per chiamare questa funzione in modalità kernel, usare Cng.lib, che fa parte del Driver Development Kit (DDK). Windows Server 2008 e Windows Vista: Per chiamare questa funzione in modalità kernel, usare Ksecdd.lib.

Requisiti

Requisito Valore
Client minimo supportato Windows Vista [app desktop | App UWP]
Server minimo supportato Windows Server 2008 [app desktop | App UWP]
Piattaforma di destinazione Windows
Intestazione bcrypt.h
Libreria Bcrypt.lib
DLL Bcrypt.dll