Fonction CertCreateContext (wincrypt.h)
La fonction CertCreateContext crée le contexte spécifié à partir des octets encodés. Le contexte créé n’inclut aucune propriété étendue.
Syntaxe
const void * CertCreateContext(
[in] DWORD dwContextType,
[in] DWORD dwEncodingType,
[in] const BYTE *pbEncoded,
[in] DWORD cbEncoded,
[in] DWORD dwFlags,
[in, optional] PCERT_CREATE_CONTEXT_PARA pCreatePara
);
Paramètres
[in] dwContextType
Spécifie les contextes qui peuvent être créés. Par exemple, pour créer un contexte de certificat, définissez dwContextType sur CERT_STORE_CERTIFICATE_CONTEXT.
Les indicateurs de type de contexte actuellement définis sont présentés dans le tableau suivant.
Valeur | Signification |
---|---|
|
Contexte de certificat. |
|
Contexte de liste de révocation de certificats. |
|
Contexte de la CTL. |
[in] dwEncodingType
Spécifie le type d’encodage utilisé. Actuellement, seuls les X509_ASN_ENCODING et les PKCS_7_ASN_ENCODING sont utilisés ; toutefois, des types d’encodage supplémentaires peuvent être ajoutés à l’avenir. Pour l’un ou l’autre type d’encodage actuel, utilisez :
X509_ASN_ENCODING | PKCS_7_ASN_ENCODING.
[in] pbEncoded
Pointeur vers une mémoire tampon qui contient le contenu de contexte encodé existant à copier.
[in] cbEncoded
Taille, en octets, de la mémoire tampon pbEncoded .
[in] dwFlags
Les valeurs d’indicateur suivantes sont définies et peuvent être combinées à l’aide d’une opération OR au niveau du bit.
Valeur | Signification |
---|---|
|
Le contexte créé pointe directement vers le contenu pointé vers pbEncoded au lieu d’une copie allouée. |
|
La fonction crée un contexte avec des entrées triées. Actuellement, cet indicateur s’applique uniquement à un contexte CTL.
Pour les CTL, le membre cCTLEntry de la structure CTL_INFO retournée est toujours égal à zéro. CertFindSubjectInSortedCTL et CertEnumSubjectInSortedCTL doivent être appelés pour rechercher ou énumérer les entrées CTL. |
|
Par défaut, lorsqu’un contexte CTL est créé, un handle HCRYTPMSG dans son message SignedData est créé. Cet indicateur peut être défini pour améliorer les performances en ne créant pas ce handle. Cet indicateur ne peut être utilisé que lorsque dwContextType est CERT_STORE_CTL_CONTEXT. |
|
Par défaut, lorsqu’un contexte CTL est créé, ses entrées sont décodées. Lorsque cet indicateur est défini, les entrées ne sont pas décodées et les performances sont améliorées. Cet indicateur ne peut être utilisé que lorsque dwContextType est CERT_STORE_CTL_CONTEXT. |
[in, optional] pCreatePara
Pointeur vers une structure CERT_CREATE_CONTEXT_PARA .
Si pCreatePara et son membre pfnFree sont tous deux non NULL, le membre pfnFree est utilisé pour libérer la mémoire spécifiée par le membre pvFree . Si le membre pvFree a la valeur NULL, le membre pfnFree est utilisé pour libérer le pointeur pbEncoded .
Si pCreatePara ou son membre pfnFree a la valeur NULL, aucune tentative n’est effectuée pour libérer pbEncoded.
Valeur retournée
Si la fonction réussit, la valeur de retour est un pointeur vers le contexte nouvellement créé. Le membre pvFree de pCreatePara doit être appelé pour libérer le contexte créé.
Si la fonction échoue, la valeur de retour est NULL. Pour obtenir des informations d’erreur étendues, appelez GetLastError.
Si GetLastError retourne ERROR_CANCELLED, cela signifie que la fonction de rappel PFN_CERT_CREATE_CONTEXT_SORT_FUNC a retourné FALSE pour arrêter le tri.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows XP [applications de bureau | applications UWP] |
Serveur minimal pris en charge | Windows Server 2003 [applications de bureau | applications UWP] |
Plateforme cible | Windows |
En-tête | wincrypt.h |
Bibliothèque | Crypt32.lib |
DLL | Crypt32.dll |
Voir aussi
Fonctions de maintenance du magasin de certificats et de certificats