ISCardDatabase :: ListCardInterfaces, méthode

[La méthode ListCardInterfaces peut être utilisée dans les systèmes d’exploitation spécifiés dans la section relative à la configuration requise. elle n’est pas disponible pour une utilisation dans Windows server 2003 avec Service Pack 1 (SP1) et versions ultérieures, Windows Vista, Windows Server 2008 et les versions ultérieures du système d’exploitation. Les modules de carte à puce offrent des fonctionnalités similaires.]

La méthode ListCardInterfaces récupère les identificateurs (Guid) de toutes les interfaces prises en charge pour la carte à pucespécifiée.

Syntaxe

HRESULT ListCardInterfaces(
  [in]  BSTR        bstrCardName,
  [out] LPSAFEARRAY *ppInterfaceGuids
);

Paramètres

bstrCardName [ dans]

Nom de la carte à puce.

ppInterfaceGuids [ à]

Pointeur vers les GUID d’interface en cas de réussite ; Null si l’opération a échoué.

Valeur de retour

La méthode retourne l’une des valeurs possibles suivantes.

Code de retour Description
_OK
Opération exécutée avec succès.
E _ INVALIDARG
Paramètre non valide.
_pointeur E
Un pointeur incorrect a été passé dans ppInterfaceGuids.
_OUTOFMEMORY E
Mémoire insuffisante.

Notes

Pour récupérer le fournisseur de services principal de la carte à puce, appelez GetProviderCardId.

Pour récupérer toutes les cartes à puceconnues, les lecteurset les groupes de lecteurs appellent respectivement ListCards, ListReaderset ListReaderGroups .

Pour obtenir la liste de toutes les méthodes fournies par cette interface, consultez ISCardDatabase.

Outre les codes d’erreur COM listés ci-dessus, cette interface peut retourner un code d’erreur de carte à puce si une fonction de carte à puce a été appelée pour terminer la demande. Pour plus d’informations, consultez valeurs de retour de carte à puce.

Exemples

L’exemple suivant montre l’extraction des identificateurs des interfaces prises en charge pour la carte à puce spécifiée.

BSTR         bstrCard = NULL;
LPSAFEARRAY  pGuids = NULL;
HRESULT      hr;

bstrCard = SysAllocString(L"GemSAFE");
// Call the function for the specified card.
hr = pISCDataBase->ListCardInterfaces(bstrCard,
                                      &pGuids);
if (FAILED(hr))
{
   printf("Failed ListCardInterfaces\n");
   // Take other error handling action as needed.
}
else
{
   // Use the safe array as needed.
   // ...
   // Free BSTR when done.
   if (bstrCard)
       SysFreeString(bstrCard);
}

Spécifications

Condition requise Valeur
Client minimal pris en charge
Windows [Applications de bureau XP uniquement]
Serveur minimal pris en charge
Windows Serveur 2003 [ applications de bureau uniquement]
Fin de la prise en charge des clients
Windows XP
Fin de la prise en charge des serveurs
Windows Server 2003
En-tête
Scardmgr. h
Bibliothèque de types
Scardmgr. tlb
DLL
Scardssp.dll
IID
IID _ ISCardDatabase est défini en tant que 1461AAC8-6810-11D0-918F-00AA00C18068

Voir aussi

GetProviderCardId

ISCardDatabase

ListCards

ListReaderGroups

ListReaders