Função BCryptGetProperty (bcrypt.h)

A função BCryptGetProperty recupera o valor de uma propriedade nomeada para um objeto CNG.

Sintaxe

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

Parâmetros

[in] hObject

Um identificador que representa o objeto CNG para o qual obter o valor da propriedade.

[in] pszProperty

Um ponteiro para uma cadeia de caracteres Unicode terminada em nulo que contém o nome da propriedade a ser recuperada. Esse pode ser um dos Identificadores de Propriedade Primitiva de Criptografia predefinidos ou um identificador de propriedade personalizado.

[out] pbOutput

O endereço de um buffer que recebe o valor da propriedade. O parâmetro cbOutput contém o tamanho desse buffer.

[in] cbOutput

O tamanho, em bytes, do buffer pbOutput .

[out] pcbResult

Um ponteiro para uma variável ULONG que recebe o número de bytes que foram copiados para o buffer pbOutput . Se o parâmetro pbOutput for NULL, essa função colocará o tamanho necessário, em bytes, no local apontado por esse parâmetro.

[in] dwFlags

Um conjunto de sinalizadores que modificam o comportamento dessa função. Nenhum sinalizador é definido para essa função.

Retornar valor

Retorna um código status que indica o êxito ou a falha da função.

Os códigos de retorno possíveis incluem, mas não se limitam a, o seguinte.

Código de retorno Descrição
STATUS_SUCCESS
A função foi bem-sucedida.
STATUS_BUFFER_TOO_SMALL
O tamanho do buffer especificado pelo parâmetro cbOutput não é grande o suficiente para manter o valor da propriedade.
STATUS_INVALID_HANDLE
O identificador no parâmetro hObject não é válido.
STATUS_INVALID_PARAMETER
Um ou mais dos parâmetros não são válidos.
STATUS_NOT_SUPPORTED
Não há suporte para a propriedade nomeada especificada pelo parâmetro pszProperty .

Comentários

Para obter o tamanho necessário para uma propriedade, passe NULL para o parâmetro pbOutput . Essa função colocará o tamanho necessário, em bytes, no valor apontado pelo parâmetro pcbResult .

Dependendo de quais modos de processador um provedor dá suporte, BCryptGetProperty pode ser chamado do modo de usuário ou do modo kernel. Os chamadores do modo kernel podem ser executados em PASSIVE_LEVELIRQL ou DISPATCH_LEVEL IRQL. Se o nível IRQL atual for DISPATCH_LEVEL, todos os ponteiros passados para a função BCryptGetProperty deverão se referir à memória nãopagada (ou bloqueada). Se o objeto especificado no parâmetro hObject for um identificador, ele deverá ter sido aberto usando o sinalizador BCRYPT_PROV_DISPATCH .

Para chamar essa função no modo kernel, use Cng.lib, que faz parte do DDK (Driver Development Kit). Windows Server 2008 e Windows Vista: Para chamar essa função no modo kernel, use Ksecdd.lib.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows Vista [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo com suporte Windows Server 2008 [aplicativos da área de trabalho | Aplicativos UWP]
Plataforma de Destino Windows
Cabeçalho bcrypt.h
Biblioteca Bcrypt.lib
DLL Bcrypt.dll