Função CertRetrieveLogoOrBiometricInfo (wincrypt.h)
A função CertRetrieveLogoOrBiometricInfo executa uma recuperação de URL do logotipo ou informações biométricas especificadas na extensão de certificado szOID_LOGOTYPE_EXT ou szOID_BIOMETRIC_EXT . A extensão de szOID_BIOMETRIC_EXT (IETF RFC 3739) dá suporte à adição de uma assinatura ou uma representação pictórica do titular humano do certificado. A extensão de szOID_LOGOTYPE_EXT (IETF RFC 3709) dá suporte à adição de representações pictóricas organizacionais em certificados.
Sintaxe
BOOL CertRetrieveLogoOrBiometricInfo(
[in] PCCERT_CONTEXT pCertContext,
[in] LPCSTR lpszLogoOrBiometricType,
[in] DWORD dwRetrievalFlags,
[in] DWORD dwTimeout,
[in] DWORD dwFlags,
void *pvReserved,
[out] BYTE **ppbData,
[out] DWORD *pcbData,
[out] LPWSTR *ppwszMimeType
);
Parâmetros
[in] pCertContext
O endereço de uma estrutura CERT_CONTEXT que contém o certificado.
[in] lpszLogoOrBiometricType
O endereço de uma cadeia de caracteres ANSI terminada em nulo que contém uma cadeia de caracteres OID ( identificador de objeto ) que identifica o tipo de informações a serem recuperadas.
Esse parâmetro também pode conter um dos seguintes valores predefinidos.
[in] dwRetrievalFlags
Um conjunto de sinalizadores que especificam como as informações devem ser recuperadas. Esse parâmetro é passado como dwRetrievalFlags na função CryptRetrieveObjectByUrl .
[in] dwTimeout
A quantidade máxima de tempo, em milissegundos, para aguardar a recuperação.
[in] dwFlags
Esse parâmetro é reservado e precisa ser zero.
pvReserved
Esse parâmetro não é usado e deve ser NULL.
[out] ppbData
O endereço de um ponteiro BYTE que recebe o tipo de logotipo ou dados biométricos. Essa memória deve ser liberada quando não for mais necessária passando esse ponteiro para a função CryptMemFree .
[out] pcbData
O endereço de uma variável DWORD que recebe o número de bytes no buffer ppbData .
[out] ppwszMimeType
O endereço de um ponteiro para uma cadeia de caracteres Unicode terminada em nulo que recebe o tipo MIME (Várias Extensões de Internet Mail) dos dados. Esse parâmetro poderá ser NULL se essas informações não forem necessárias. Essa memória deve ser liberada quando não for mais necessária passando esse ponteiro para a função CryptMemFree .
Esse endereço sempre recebe NULL para tipos biométricos. Você sempre deve garantir que esse parâmetro contenha um endereço de memória válido antes de tentar acessar a memória.
Valor retornado
Retornará diferente de zero se tiver êxito ou zero caso contrário.
Para obter informações de erro estendidas, chame GetLastError. Os possíveis códigos de erro retornados pela função GetLastError incluem, mas não se limitam a, o seguinte.
Código de retorno | Descrição |
---|---|
|
O valor de hash computado não corresponde ao valor de hash no certificado. |
|
O certificado não contém a extensão szOID_LOGOTYPE_EXT ou szOID_BIOMETRIC_EXT ou o lpszLogoOrBiometricType especificado não foi encontrado. |
|
Um ou mais dos parâmetros não são válidos. |
|
Nenhum dado pode ser recuperado da URL especificada pela extensão de certificado. |
|
O certificado não dá suporte à extensão necessária. |
|
O algoritmo de hash OID é desconhecido. |
Requisitos
Cliente mínimo com suporte | Windows Vista [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2008 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | wincrypt.h |
Biblioteca | Crypt32.lib |
DLL | Crypt32.dll |