Fonction CryptGetDefaultOIDFunctionAddress (wincrypt.h)
La fonction CryptGetDefaultOIDFunctionAddress charge la DLL qui contient une adresse de fonction par défaut. Il peut également retourner l’adresse de la première ou de la fonction OID ( Identificateur d’objet par défaut) installée dans un jeu de fonctions initialisé et charger la DLL qui contient l’adresse de cette fonction.
Syntaxe
BOOL CryptGetDefaultOIDFunctionAddress(
[in] HCRYPTOIDFUNCSET hFuncSet,
[in] DWORD dwEncodingType,
[in, optional] LPCWSTR pwszDll,
[in] DWORD dwFlags,
[out] void **ppvFuncAddr,
[in, out] HCRYPTOIDFUNCADDR *phFuncAddr
);
Paramètres
[in] hFuncSet
Handle de jeu de fonctions précédemment obtenu à partir d’un appel à CryptInitOIDFunctionSet.
[in] dwEncodingType
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
[in, optional] pwszDll
Nom de la DLL à charger. Normalement, le nom de la DLL est obtenu à partir de la liste retournée par CryptGetDefaultOIDDllList. Si pwszDll a la valeur NULL, une recherche est effectuée dans la liste des fonctions par défaut installées.
[in] dwFlags
Réservé à une utilisation future et doit être égal à zéro.
[out] ppvFuncAddr
Pointeur vers l’adresse de la fonction de retour. Si la fonction échoue, une valeur NULL est retournée dans ppvFuncAddr.
[in, out] phFuncAddr
Utilisé uniquement si pwszDll a la valeur NULL. Lors du premier appel à la fonction, *phFuncAddr doit avoir la valeur NULL pour acquérir la première fonction installée.
Lorsque cette fonction réussit, *phFuncAddr est défini sur un handle de fonction. Le nombre de références pour le handle de fonction est incrémenté.
Après le premier appel à la fonction, phFuncAddr est défini sur le pointeur retourné par l’appel précédent. Ce pointeur d’entrée est toujours libéré dans la fonction via un appel à CryptFreeOIDFunctionAddress par cette fonction. L’appel pour libérer le pointeur est toujours effectué même lorsque la fonction main retourne une erreur.
Un phFuncAddr non NULL doit être libéré via un appel à CryptFreeOIDFunctionAddress ou en étant renvoyé en tant qu’entrée à cette fonction ou en tant qu’entrée à CryptGetOIDFunctionAddress.
Si pwszDll n’a pas la valeur NULL, la valeur de ce paramètre est ignorée et un pointeur non NULL n’est pas libéré.
Valeur retournée
Si la fonction réussit, la fonction retourne une valeur différente de zéro (TRUE).
Si la fonction échoue, elle retourne zéro (FALSE).
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 |