Fonction CryptGetOIDFunctionValue (wincrypt.h)
La fonction CryptGetOIDFunctionValue interroge une valeur associée à un OID. La requête est effectuée pour une valeur nommée spécifique associée à un OID, un nom de fonction et un type d’encodage. La fonction peut retourner le type de valeur interrogée, la valeur elle-même ou les deux.
Syntaxe
BOOL CryptGetOIDFunctionValue(
[in] DWORD dwEncodingType,
[in] LPCSTR pszFuncName,
[in] LPCSTR pszOID,
[in] LPCWSTR pwszValueName,
[out] DWORD *pdwValueType,
[out] BYTE *pbValueData,
[in, out] DWORD *pcbValueData
);
Paramètres
[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.
[in] pszFuncName
Pointeur vers la chaîne terminée par null qui contient le nom du jeu de fonctions OID.
[in] pszOID
Si le mot d’ordre supérieur de l’OID est différent de zéro, pszOID est un pointeur vers une chaîne OID terminée par null telle que « 2.5.29.1 » ou une chaîne ASCII terminée par null comme « file ». Si le mot d’ordre supérieur de l’OID est égal à zéro, le mot d’ordre inférieur spécifie l’identificateur numérique à utiliser comme identificateur d’objet.
[in] pwszValueName
Pointeur vers une chaîne Unicode terminée par null qui contient le nom de la valeur à interroger.
[out] pdwValueType
Pointeur vers une variable pour recevoir le type de la valeur. Le type retourné par le biais de ce paramètre est l’un des suivants.
Valeur | Signification |
---|---|
|
Nombre 32 bits. |
|
Chaîne Unicode qui contient des références non expirées à des variables d’environnement telles que « %PATH% ». Les applications doivent s’assurer que la chaîne a un caractère null de fin avant de l’utiliser. Pour plus d’informations sur les cas où la chaîne n’a pas de caractère null de fin, consultez RegQueryValueEx. |
|
Tableau de chaînes Unicode terminées par un caractère Null. Les applications doivent s’assurer que le tableau est correctement terminé par deux caractères Null avant de l’utiliser. Pour plus d’informations sur le moment où le tableau n’est pas terminé par deux caractères Null, consultez RegQueryValueEx. |
|
Chaîne Unicode. Les applications doivent s’assurer que la chaîne a un caractère null de fin avant de l’utiliser. Pour plus d’informations sur les cas où la chaîne n’a pas de caractère null de fin, consultez RegQueryValueEx. |
Le paramètre pdwValueType peut être NULL si un type retourné n’est pas requis.
[out] pbValueData
Pointeur vers une mémoire tampon pour recevoir la valeur associée au paramètre pwszValueName . La mémoire tampon doit être suffisamment grande pour contenir le caractère NULL de fin. Ce paramètre peut être NULL si les données retournées ne sont pas requises.
Ce paramètre peut également être NULL pour rechercher la taille de la mémoire tampon à des fins d’allocation de mémoire. Pour plus d’informations, consultez Récupération de données de longueur inconnue.
[in, out] pcbValueData
Pointeur vers un DWORD qui spécifie la taille, en octets, de la mémoire tampon pointée par pbValueData.
Dans la plupart des cas, la valeur retournée dans *pcbValueData inclut la taille du caractère NULL de fin dans la chaîne. Pour plus d’informations sur les situations où le caractère NULL n’est pas inclus, consultez la section Remarques de RegQueryValueEx.
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). Pour obtenir des informations d’erreur étendues, appelez GetLastError.
Cette fonction contient le code d’erreur suivant.
Valeur | Description |
---|---|
|
Si la mémoire tampon spécifiée par le paramètre pbValueData n’est pas assez grande pour contenir les données retournées, la fonction définit le code ERROR_MORE_DATA et stocke la taille de mémoire tampon requise, en octets, dans la variable pointée par pcbValueData. |
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 |