ISCard::get_Atr-Methode

[Die get_Atr-Methode ist für die Verwendung in den Betriebssystemen verfügbar, die im Abschnitt Anforderungen angegeben sind. Die Smartcardmodule bieten ähnliche Funktionen.]

Die get_Atr-Methode ruft eine ATR-Zeichenfolge des intelligenten Karte ab.

Syntax

HRESULT get_Atr(
  [out] LPBYTEBUFFER *ppAtr
);

Parameter

ppAtr [out]

Zeiger auf einen Bytepuffer in Form eines IStream , der bei der Rückgabe die ATR-Zeichenfolge enthält.

Rückgabewert

Die -Methode gibt einen der folgenden möglichen Werte zurück.

Rückgabecode BESCHREIBUNG
S_OK
Operation erfolgreich abgeschlossen.
E_INVALIDARG
Der ppAtr-Parameter ist ungültig.
E_POINTER
Ein fehlerhafter Zeiger wurde in ppAtr übergeben.
E_OUTOFMEMORY
Arbeitsspeicher zur Erfüllung der Anforderung ist nicht verfügbar.

 

Bemerkungen

Zusätzlich zu den oben aufgeführten COM-Fehlercodes gibt diese Schnittstelle möglicherweise einen Intelligenten Karte Fehlercode zurück, wenn eine Smart Karte-Funktion aufgerufen wurde, um die Anforderung abzuschließen. Weitere Informationen finden Sie unter Smartcard-Rückgabewerte.

Beispiele

Das folgende Beispiel zeigt das Abrufen der ATR-Zeichenfolge aus dem intelligenten Karte.

// 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");

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows XP [nur Desktop-Apps]
Unterstützte Mindestversion (Server)
Windows Server 2003 [nur Desktop-Apps]
Ende des Supports (Client)
Windows XP
Ende des Supports (Server)
Windows Server 2003
Header
Scardmgr.h
Typbibliothek
Scardmgr.tlb
DLL
Scardssp.dll
IID
IID_ISCard ist definiert als 1461AAC3-6810-11D0-918F-00AA00C18068

Siehe auch

get_CardHandle

get_Context

get_Protocol

get_Status

ISCard

IByteBuffer::Read