CryptGetMessageCertificates, fonction (wincrypt.h)
La fonction CryptGetMessageCertificates retourne le handle d’un magasin de certificats ouvert contenant les certificats et les listes de révocation de certificats du message. Cette fonction appelle CertOpenStore en utilisant le type de fournisseur CERT_STORE_PROV_PKCS7 comme paramètre lpszStoreProvider .
Syntaxe
HCERTSTORE CryptGetMessageCertificates(
[in] DWORD dwMsgAndCertEncodingType,
[in] HCRYPTPROV_LEGACY hCryptProv,
[in] DWORD dwFlags,
[in] const BYTE *pbSignedBlob,
[in] DWORD cbSignedBlob
);
Paramètres
[in] dwMsgAndCertEncodingType
Spécifie le type d’encodage utilisé. Il est toujours acceptable de spécifier les types d’encodage de certificat et de message en les combinant avec une opération OR au niveau du bit, comme illustré dans l’exemple suivant :
X509_ASN_ENCODING | PKCS_7_ASN_ENCODING
Les types d’encodage actuellement définis sont les suivants :
- X509_ASN_ENCODING
- PKCS_7_ASN_ENCODING
[in] hCryptProv
Ce paramètre n’est pas utilisé et doit être défini sur NULL.
Windows Server 2003 et Windows XP : Handle du fournisseur csp passé à CertOpenStore. Pour plus d’informations, consultez CertOpenStore. Sauf s’il existe une raison forte de passer un fournisseur de chiffrement spécifique dans hCryptProv, transmettez zéro pour entraîner l’acquisition du fournisseur RSA ou DSS par défaut.
Le type de données de ce paramètre est HCRYPTPROV.
[in] dwFlags
Indicateurs passés à CertOpenStore. Pour plus d’informations, consultez CertOpenStore.
[in] pbSignedBlob
Pointeur vers une structure CRYPT_INTEGER_BLOB mise en mémoire tampon qui contient le message signé.
[in] cbSignedBlob
Taille, en octets, du message signé.
Valeur retournée
Retourne le magasin de certificats contenant les certificats et les listes de révocation des certificats du message. Pour une erreur, NULL est retourné.
La liste suivante répertorie le code d’erreur le plus souvent retourné par la fonction GetLastError .
Code de retour | Description |
---|---|
|
Types d’encodage de message et de certificat non valides. Actuellement, seuls les PKCS_7_ASN_ENCODING et les X509_ASN_ENCODING sont pris en charge. |
Si la fonction échoue, GetLastError peut renvoyer une erreur d’encodage/décodage ASN.1 ( Abstract Syntax Notation One ). Pour plus d’informations sur ces erreurs, consultez Valeurs de retour d’encodage/décodage ASN.1.
Remarques
Utilisez GetLastError pour déterminer la raison des erreurs.
Exemples
Pour obtenir un exemple qui utilise cette fonction, consultez Exemple de programme C : Définition et obtention des propriétés du magasin de certificats.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows XP [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2003 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | wincrypt.h |
Bibliothèque | Crypt32.lib |
DLL | Crypt32.dll |