ISCardDatabase::ListCards, méthode
[La méthode ListCards peut être utilisée dans les systèmes d’exploitation spécifiés dans la section Configuration requise. Il 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 ListCards récupère tous les noms de carte intelligents qui correspondent aux identificateurs d’interface (GUID) spécifiés, à la chaîne ATR spécifiée ou aux deux.
Syntaxe
HRESULT ListCards(
[in] LPBYTEBUFFER pAtr,
[in] LPSAFEARRAY pInterfaceGuids,
[in] LONG localeId,
[out] LPSAFEARRAY *ppCardNames
);
Paramètres
-
pAtr [in]
-
Pointeur vers une chaîne ATR carte intelligente. La chaîne ATR doit être empaquetée dans un IByteBuffer.
-
pInterfaceGuids [in]
-
Pointeur vers un SAFEARRAY d’identificateurs d’interface COM (GUID) au format BSTR.
-
localeId [in]
-
Identificateur de localisation de langue.
-
ppCardNames [out]
-
Pointeur vers un SAFEARRAY de BSTR qui contient les noms des cartes à puce qui ont satisfait les paramètres de recherche en cas de réussite ; NULL si l’opération a échoué.
Valeur retournée
La méthode retourne l’une des valeurs possibles suivantes.
Code de retour | Description |
---|---|
|
Opération exécutée avec succès. |
|
Paramètre non valide. |
|
Un pointeur incorrect a été passé. |
|
Mémoire insuffisante. |
Notes
Pour récupérer tous les lecteursou lecteurs connus, appelez Respectivement ListReaders ou ListReaderGroups .
Pour récupérer le service principal ou les interfaces d’un carte GetProviderCardId ou ListCardInterfaces respectivement.
Pour obtenir la liste de toutes les méthodes fournies par cette interface, consultez ISCardDatabase.
En plus des codes d’erreur COM répertoriés ci-dessus, cette interface peut retourner un code d’erreur de carte intelligent si une fonction de carte intelligente a été appelée pour terminer la demande. Pour plus d’informations, consultez Valeurs de retour de carte à puce.
Exemples
L’exemple suivant montre comment récupérer les noms de carte intelligents qui correspondent à la chaîne ATR spécifiée.
// Define or determine byAtr as needed for your ATR use.
BYTE byAtr[] = {0x3b,0x27,0x00,0x80,0x65,0xa2,0x0c,0x01,0x01,0x37};
LPSAFEARRAY pSafeArray = NULL;
HRESULT hr;
// pIByteBuff is a pointer to an instance of IByteBuffer.
hr = pIByteBuff->Initialize(sizeof(byAtr), byAtr);
// Call the function for the specified ATR.
hr = pISCDataBase->ListCards(pIByteBuff,
NULL,
0,
&pSafeArray);
if (FAILED(hr))
{
printf("Failed ListCards\n");
// Take other error handling action as needed.
}
else
{
// Use the safe array as needed.
}
Spécifications
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] |
Fin de la prise en charge des clients |
Windows XP |
Fin de la prise en charge des serveurs |
Windows Server 2003 |
En-tête |
|
Bibliothèque de types |
|
DLL |
|
IID |
IID_ISCardDatabase est défini comme 1461AAC8-6810-11D0-918F-00AA00C18068 |
Voir aussi