Compartilhar via


Função NCryptOpenStorageProvider (ncrypt.h)

A função NCryptOpenStorageProvider carrega e inicializa um provedor de armazenamento de chaves CNG.

Sintaxe

SECURITY_STATUS NCryptOpenStorageProvider(
  [out]          NCRYPT_PROV_HANDLE *phProvider,
  [in, optional] LPCWSTR            pszProviderName,
  [in]           DWORD              dwFlags
);

Parâmetros

[out] phProvider

Um ponteiro para uma variável NCRYPT_PROV_HANDLE que recebe o identificador do provedor. Quando terminar de usar esse identificador, solte-o passando-o para a função NCryptFreeObject .

[in, optional] pszProviderName

Um ponteiro para uma cadeia de caracteres Unicode terminada em nulo que identifica o provedor de armazenamento de chaves a ser carregado. Esse é o alias registrado do provedor de armazenamento de chaves. Esse parâmetro é opcional e pode ser NULL. Se esse parâmetro for NULL, o provedor de armazenamento de chaves padrão será carregado. Os valores a seguir identificam os provedores de armazenamento de chaves internos.

Valor Significado
MS_KEY_STORAGE_PROVIDER
L"Provedor de Armazenamento de Chaves de Software da Microsoft"
Identifica o provedor de armazenamento de chaves de software fornecido pela Microsoft.
MS_SMART_CARD_KEY_STORAGE_PROVIDER
L"Provedor de Armazenamento de Chaves de Cartão Inteligente da Microsoft"
Identifica o provedor de armazenamento de chaves de cartão inteligente fornecido pela Microsoft.
MS_PLATFORM_CRYPTO_PROVIDER
L"Provedor de Criptografia da Plataforma Microsoft"
Identifica o provedor de armazenamento de chaves do TPM fornecido pela Microsoft.

[in] dwFlags

Sinalizadores que modificam o comportamento da 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
ERROR_SUCCESS
A função foi bem-sucedida.
NTE_BAD_FLAGS
O parâmetro dwFlags contém um ou mais sinalizadores que não têm suporte.
NTE_INVALID_PARAMETER
Um ou mais dos parâmetros não são válidos.
NTE_NO_MEMORY
Ocorreu uma falha de alocação de memória.

Comentários

Caso uma condição de erro seja retornada, o provedor terá sido descarregado da memória. As funções dentro do provedor não devem ser chamadas depois que um erro de falha é retornado.

Um serviço não deve chamar essa função de sua Função StartService. Se um serviço chamar essa função de sua função StartService, um deadlock poderá ocorrer e o serviço poderá parar de responder.

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 ncrypt.h
Biblioteca Ncrypt.lib
DLL Ncrypt.dll