ICEnroll3 ::EnumAlgs, méthode (xenroll.h)
[Cette méthode n’est plus disponible à partir de Windows Server 2008 et Windows Vista.]
La méthode EnumAlgs récupère les ID d’algorithmes de chiffrement dans une classe d’algorithme donnée qui sont pris en charge par le fournisseur de services de chiffrement (CSP) actuel. Cette méthode a d’abord été définie dans l’interface ICEnroll3 .
Syntaxe
HRESULT EnumAlgs(
[in] LONG dwIndex,
[in] LONG algClass,
[out] LONG *pdwAlgID
);
Paramètres
[in] dwIndex
Spécifie la position ordinale de l’algorithme dont l’ID sera récupéré. Spécifiez zéro pour le premier algorithme.
[in] algClass
Classe d’algorithme de chiffrement. Les ID retournés par cette méthode seront dans la classe spécifiée. Spécifiez l'une des valeurs suivantes :
- ALG_CLASS_HASH
- ALG_CLASS_KEY_EXCHANGE
- ALG_CLASS_MSG_ENCRYPT
- ALG_CLASS_DATA_ENCRYPT
- ALG_CLASS_SIGNATURE
[out] pdwAlgID
Pointeur vers une variable pour recevoir un ID d’algorithme de chiffrement pris en charge par le fournisseur de solutions cloud actuel.
Valeur retournée
C++
La valeur de retour est HRESULT. Une valeur de S_OK indique la réussite. Lorsqu’il n’y a plus d’algorithmes à énumérer, la valeur ERROR_NO_MORE_ITEMS est retournée.VB
ID d’algorithme de chiffrement pris en charge par le fournisseur de solutions cloud actuel. Lorsqu’il n’y a plus d’algorithmes à énumérer, la valeur ERROR_NO_MORE_ITEMS est retournée.Remarques
Pour connaître l’ID d’algorithme et les constantes de classe utilisées par cette méthode, consultez Wincrypt.h.
Exemples
#include <windows.h>
#include <stdio.h>
#include <Xenroll.h>
DWORD dwAlgID;
DWORD dwIndex;
BSTR bstrAlgName = NULL;
HRESULT hr, hr2;
// Loop through the AlgIDs.
dwIndex = 0;
while ( TRUE )
{
// Enumerate the alg IDs for a specific class.
hr = pEnroll->EnumAlgs(dwIndex, ALG_CLASS_SIGNATURE, &dwAlgID);
if ( S_OK != hr )
{
break;
}
// Do something with the AlgID.
// For example, retrieve the corresponding name.
hr2 = pEnroll->GetAlgName( dwAlgID, &bstrAlgName);
if ( FAILED( hr2 ) )
printf("Failed GetAlgName [%x]\n", hr);
else
printf("AlgID: %d Name: %S\n", dwAlgID, bstrAlgName );
// Reuse the BSTR variable in next iteration.
if ( NULL != bstrAlgName )
{
SysFreeString( bstrAlgName );
bstrAlgName = NULL;
}
// Increment the index.
dwIndex++;
}
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 | xenroll.h |
Bibliothèque | Uuid.lib |
DLL | Xenroll.dll |
Voir aussi
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour