ISCard :: obtient la _ méthode ATR

[La méthode obtenir _ ATR peut être utilisée dans les systèmes d’exploitation spécifiés dans la section Configuration requise. Les modules de carte à puce offrent des fonctionnalités similaires.]

La méthode obtenir _ ATR récupère une chaîne ATR de la carte à puce.

Syntaxe

HRESULT get_Atr(
  [out] LPBYTEBUFFER *ppAtr
);

Paramètres

ppAtr [ à]

Pointeur vers une mémoire tampon d’octets sous la forme d’un IStream qui contiendra la chaîne ATR en retour.

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
Le paramètre ppAtr n’est pas valide.
_pointeur E
Un pointeur incorrect a été passé dans ppAtr.
_OUTOFMEMORY E
La mémoire pour satisfaire la demande n’est pas disponible.

Notes

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 comment récupérer la chaîne ATR à partir de la carte à puce.

// Retrieve the ATR.
// pISCard is a pointer to a previously instantiated ISCard.
// pAtr is a pointer to a previously instantiated IByteBuffer.
hr = pISCard->get_Atr(&pAtr);
if (FAILED(hr))
{
    printf("Failed get_Atr\n");
    // Take other error handling action.
}
// Success, you can now use IByteBuffer::Read to access ATR bytes.
BYTE  byAtr[32];
   long  lBytesRead, i;
   // Read the ATR string into a byte array.
   hr = pAtr->Read(byAtr, 32, &lBytesRead);
   // Use the ATR value. (This example merely displays the bytes.)
   for ( i = 0; i < lBytesRead; i++)
       printf("%c", *(byAtr + i));
   printf("\n");

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 _ ISCard est défini en tant que 1461AAC3-6810-11D0-918F-00AA00C18068

Voir aussi

Obtient _ CardHandle

recevoir le _ contexte

Obtient le _ protocole

afficher l' _ État

ISCard

IByteBuffer :: lecture