Fonction CryptGetOIDFunctionAddress (wincrypt.h)
La fonction CryptGetOIDFunctionAddress recherche dans la liste des fonctions inscrites et installées une correspondance de type d’encodage et d’identificateur d’objet (OID). Si une correspondance est trouvée, la DLL qui contient la fonction est, si nécessaire, chargée. Si une correspondance est trouvée, un pointeur vers l’adresse de fonction et un pointeur vers le handle de fonction sont également retournés. Le nombre de références sur le handle de fonction est incrémenté.
Syntaxe
BOOL CryptGetOIDFunctionAddress(
[in] HCRYPTOIDFUNCSET hFuncSet,
[in] DWORD dwEncodingType,
[in] LPCSTR pszOID,
[in] DWORD dwFlags,
[out] void **ppvFuncAddr,
[out] HCRYPTOIDFUNCADDR *phFuncAddr
);
Paramètres
[in] hFuncSet
Handle de jeu de fonctions précédemment obtenu à partir d’un appel à la fonction CryptInitOIDFunctionSet .
[in] dwEncodingType
Spécifie le type d’encodage à mettre en correspondance. 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 faire correspondre les deux types d’encodage actuels, utilisez :
X509_ASN_ENCODING | PKCS_7_ASN_ENCODING
Pour les fonctions qui n’utilisent pas de type d’encodage, définissez ce paramètre sur zéro.
[in] pszOID
Si le mot d’ordre élevé de l’OID est différent de zéro, pszOID est un pointeur vers une chaîne OID telle que « 2.5.29.1 » ou une chaîne ASCII telle que « file ». Si le mot d’ordre élevé de l’OID est égal à zéro, le mot d’ordre inférieur spécifie l’identificateur numérique à utiliser comme identificateur d’objet. Cet OID résultant est mappé à la fonction installée ou inscrite auprès du même OID.
[in] dwFlags
Ce paramètre peut être la valeur suivante.
Valeur | Signification |
---|---|
|
Recherche uniquement la liste installée des fonctions. |
[out] ppvFuncAddr
Pointeur vers un pointeur vers une adresse de fonction. Si une correspondance est trouvée, ppvFuncAddr pointe vers l’adresse de fonction.
[out] phFuncAddr
Si une correspondance est trouvée, phFuncAddr pointe vers le handle de fonction. Le nombre de références pour le handle est incrémenté. Une fois que vous avez terminé d’utiliser le handle, relâchez le handle en appelant la fonction CryptFreeOIDFunctionAddress .
Valeur retournée
Si la fonction réussit et qu’une correspondance est trouvée, la fonction retourne une valeur différente de zéro (TRUE).
Si la fonction échoue ou si aucune correspondance n’est trouvée, elle retourne zéro (FALSE). Pour obtenir des informations d’erreur étendues, appelez GetLastError.
Remarques
Vous pouvez appeler CryptGetOIDFunctionAddress avec l’argument pszOID défini sur CMSG_DEFAULT_INSTALLABLE_FUNC_OID pour obtenir la fonction installable par défaut pour les fonctions de rappel suivantes.
Pour récupérer les fonctions par défaut, définissez dwEncodingType sur une combinaison OR au niveau du bit des types d’encodage suivants.
CRYPT_ASN_ENCODINGX509_ASN_ENCODING
Configuration requise
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 |