Compartilhar via


Método ICspInformation::GetCspStatusFromOperations (certenroll.h)

O método GetCspStatusFromOperations cria um objeto ICspStatus para o primeiro algoritmo com suporte que é consistente com a assinatura, criptografia, hash ou operação de criptografia especificada.

Sintaxe

HRESULT GetCspStatusFromOperations(
  [in, optional] IObjectId               *pAlgorithm,
  [in]           AlgorithmOperationFlags Operations,
  [out]          ICspStatus              **ppValue
);

Parâmetros

[in, optional] pAlgorithm

Ponteiro para uma interface IObjectId que representa um OID de algoritmo. Esse parâmetro é opcional e pode ser NULL.

  • Se você especificar uma OID e definir o parâmetro Operações para XCN_NCRYPT_SIGNATURE_OPERATION e combinar esse sinalizador com XCN_NCRYPT_EXACT_MATCH_OPERATION ou XCN_NCRYPT_PREFER_SIGNATURE_ONLY_OPERATION, o primeiro algoritmo de assinatura, se houver, que corresponde à OID será usado.
  • Se você especificar um OID, mas não definir o parâmetro Operações como XCN_NCRYPT_SIGNATURE_OPERATION ou definir XCN_NCRYPT_SIGNATURE_OPERATION mas não combiná-lo com XCN_NCRYPT_EXACT_MATCH_OPERATION ou XCN_NCRYPT_PREFER_SIGNATURE_ONLY_OPERATION, o primeiro algoritmo que pode ser usado para assinatura ou criptografia será usado.
  • Se você não especificar um OID, o primeiro algoritmo com suporte consistente com os sinalizadores especificados no parâmetro Operações será usado.

[in] Operations

Um valor de enumeração AlgorithmOperationFlags que identifica o tipo de algoritmo a ser recuperado. Um dos seguintes valores deve ser especificado:

  • XCN_NCRYPT_CIPHER_OPERATION
  • XCN_NCRYPT_HASH_OPERATION
  • XCN_NCRYPT_SIGNATURE_OPERATION
  • XCN_NCRYPT_SECRET_AGREEMENT_OPERATION
  • XCN_NCRYPT_ASYMMETRIC_ENCRYPTION_OPERATION

Você pode refinar as características de pesquisa combinando um dos sinalizadores anteriores com um dos seguintes:

  • XCN_NCRYPT_PREFER_SIGNATURE_ONLY_OPERATION
  • XCN_NCRYPT_PREFER_NON_SIGNATURE_OPERATION
  • XCN_NCRYPT_EXACT_MATCH_OPERATION

Se você definir os sinalizadores de preferência XCN_NCRYPT_PREFER_SIGNATURE_ONLY_OPERATION ou XCN_NCRYPT_PREFER_NON_SIGNATURE_OPERATION, também não poderá especificar um dos seguintes:

  • XCN_NCRYPT_CIPHER_OPERATION
  • XCN_NCRYPT_HASH_OPERATION

[out] ppValue

Endereço de uma variável que recebe um ponteiro para uma interface ICspStatus .

Valor de retorno

Se a função for bem-sucedida, a função retornará S_OK.

Se a função falhar, ela retornará um valor HRESULT que indica o erro. Os valores possíveis incluem, mas não se limitam a, aqueles na tabela a seguir. Para obter uma lista de códigos de erro comuns, consulte Valores HRESULT Comuns.

Código/valor de retorno Description
CERTSRV_E_PROPERTY_EMPTY
Não foi possível encontrar o objeto ICspStatus .
OLE_E_BLANK
O objeto ICspInformation não foi inicializado.

Observações

Um objeto ICspStatus contém informações de status sobre um provedor criptográfico. Cada objeto é inicializado para um algoritmo específico com suporte pelo provedor. Se você não especificar um algoritmo no parâmetro pAlgorithm , o primeiro algoritmo com suporte consistente com as operações permitidas será escolhido para criar o objeto ICspStatus .

Requirements

Requirement Value
Cliente mínimo suportado Windows Vista [somente aplicativos da área de trabalho]
Servidor mínimo compatível Windows Server 2008 [somente aplicativos da área de trabalho]
da Plataforma de Destino Windows
Header certenroll.h
de DLL CertEnroll.dll

Consulte também

ICspInformation