Freigeben über


ISCard::AttachByReader-Methode

[Die AttachByReader-Methode ist für die Verwendung in den Betriebssystemen verfügbar, die im Abschnitt Anforderungen angegeben sind. Es ist nicht für die Verwendung in Windows Server 2003 mit Service Pack 1 (SP1) und höher, Windows Vista, Windows Server 2008 und nachfolgenden Versionen des Betriebssystems verfügbar. Die Smartcardmodule bieten ähnliche Funktionen.]

Die AttachByReader-Methode öffnet die intelligente Karte im benannten Reader.

Syntax

HRESULT AttachByReader(
  [in] BSTR              bstrReaderName,
  [in] SCARD_SHARE_MODES ShareMode,
  [in] SCARD_PROTOCOLS   PrefProtocol
);

Parameter

bstrReaderName [in]

Ein BSTR, der den Namen des intelligenten Karte-Reader enthält.

ShareMode [in]

Modus, in dem der Zugriff auf die intelligente Karte.

Wert Bedeutung
EXKLUSIVE
Niemand sonst verwendet diese Verbindung mit dem intelligenten Karte.
GETEILT
Andere Anwendungen können diese Verbindung verwenden.

 

PrefProtocol [in]

Bevorzugter Protokollwert.

T0

T1

RAW

T0| T1

Rückgabewert

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

Rückgabecode BESCHREIBUNG
S_OK
Das Öffnen auf dem intelligenten Karte im benannten Reader wurde erfolgreich abgeschlossen.
E_INVALIDARG
Es stimmt etwas nicht mit einem oder mehreren parametern, die an die Funktion übergeben werden.

 

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.

Wenn Sie den Reader verwendet haben, lassen Sie die Anlage los, indem Sie die ISCard::D etach-Methode aufrufen.

Beispiele

Das folgende Beispiel zeigt das Anfügen an eine intelligente Karte in einem angegebenen intelligenten Karte-Reader.

#include <windows.h>
#include <stdio.h>
#include <Scardmgr.h>

// The reader name is vendor specific; change as needed.
#define READER_NAME L"Vendor Reader 0"

void main()
{
    BSTR     bstrReader = NULL;
    HRESULT  hr;

    bstrReader = SysAllocString(READER_NAME);
    if (NULL == bstrReader)
    {
        // Error encountered.
        exit(1);
    }

    // Connect to the reader.
    hr = pISCard->AttachByReader(bstrReader, SHARED, T0);
    if (FAILED(hr))
    {
        printf("Failed AttachByReader\n");
        // Take other error handling action.
        // ...
    }

    // Detach reader by calling ISCard::Detach (not shown).
    // ...

    // When done, free BSTR.
    if (NULL != bstrReader)
        SysFreeString(bstrReader);
}

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

AttachByHandle

Trennen

ISCard

Anfügen