Freigeben über


SCARD_READERSTATEA Struktur (winscard.h)

Die SCARD_READERSTATE Struktur wird von Funktionen zum Nachverfolgen Smartcards innerhalb Leserverwendet.

Syntax

typedef struct {
  LPCSTR szReader;
  LPVOID pvUserData;
  DWORD  dwCurrentState;
  DWORD  dwEventState;
  DWORD  cbAtr;
  BYTE   rgbAtr[36];
} SCARD_READERSTATEA, *PSCARD_READERSTATEA, *LPSCARD_READERSTATEA;

Angehörige

szReader

Ein Zeiger auf den Namen des Zulesers, der überwacht wird.

Legen Sie den Wert dieses Elements auf "\\? PnP?\Notification" und die Werte aller anderen Mitglieder auf Null, um über die Ankunft eines neuen Smartcardlesers benachrichtigt zu werden.

pvUserData

Wird nicht vom Smartcard-Subsystemverwendet. Dieses Element wird von der Anwendung verwendet.

dwCurrentState

Aktueller Zustand des Lesers, wie in der Anwendung zu sehen. Dieses Feld kann einen der folgenden Werte in Kombination als Bitmaske übernehmen.

Wert Bedeutung
SCARD_STATE_UNAWARE
Die Anwendung weiß nicht über den aktuellen Zustandund möchte wissen. Die Verwendung dieses Werts führt zu einer sofortigen Rückgabe von Zustandsübergangsüberwachungsdiensten. Dies wird durch alle Bits dargestellt, die auf Null festgelegt sind.
SCARD_STATE_IGNORE
Die Anwendung ist nicht an diesem Leser interessiert und sollte nicht bei Überwachungsvorgängen berücksichtigt werden. Wenn dieser Bitwert festgelegt ist, werden alle anderen Bits ignoriert.
SCARD_STATE_UNAVAILABLE
Die Anwendung erwartet, dass dieser Reader nicht zur Verwendung verfügbar ist. Wenn dieses Bit festgelegt ist, werden alle folgenden Bits ignoriert.
SCARD_STATE_EMPTY
Die Anwendung erwartet, dass im Lesegerät keine Karte vorhanden ist. Wenn dieses Bit festgelegt ist, werden alle folgenden Bits ignoriert.
SCARD_STATE_PRESENT
Die Anwendung erwartet, dass im Reader eine Karte vorhanden ist.
SCARD_STATE_ATRMATCH
Die Anwendung erwartet, dass im Reader eine Karte mit einem ATR vorhanden ist, die mit einer der Zielkarten übereinstimmt. Wenn dieses Bit festgelegt ist, wird SCARD_STATE_PRESENT angenommen. Dieses Bit hat keine Bedeutung, um SCardGetStatusChange über SCARD_STATE_PRESENT hinaus zu.
SCARD_STATE_EXCLUSIVE
Die Anwendung erwartet, dass die Karte im Lesegerät ausschließlich von einer anderen Anwendung verwendet wird. Wenn dieses Bit festgelegt ist, wird SCARD_STATE_PRESENT angenommen.
SCARD_STATE_INUSE
Die Anwendung erwartet, dass die Karte im Reader von einer oder mehreren anderen Anwendungen verwendet wird, kann aber im gemeinsam genutzten Modus verbunden sein. Wenn dieses Bit festgelegt ist, wird SCARD_STATE_PRESENT angenommen.
SCARD_STATE_MUTE
Die Anwendung erwartet, dass im Lesegerät eine nicht reagierende Karte vorhanden ist.
SCARD_STATE_UNPOWERED
Dies bedeutet, dass die Karte im Reader nicht eingeschaltet wurde.

dwEventState

Aktueller Zustand des Leselesers, wie vom Smartcard-Ressourcen-Manager. Dieses Feld kann einen der folgenden Werte in Kombination als Bitmaske übernehmen.

Wert Bedeutung
SCARD_STATE_IGNORE
Dieser Leser sollte ignoriert werden.
SCARD_STATE_CHANGED
Es gibt einen Unterschied zwischen dem zustand, der von der Anwendung angenommen wird, und dem Zustand, der vom Ressourcen-Manager bekannt ist. Wenn dieses Bit festgelegt ist, kann die Anwendung davon ausgehen, dass für diesen Reader eine erhebliche Zustandsänderung aufgetreten ist.
SCARD_STATE_UNKNOWN
Der angegebene Lesername wird vom Ressourcen-Manager nicht erkannt. Wenn dieses Bit festgelegt ist, werden auch SCARD_STATE_CHANGED und SCARD_STATE_IGNORE festgelegt.
SCARD_STATE_UNAVAILABLE
Der tatsächliche Status dieses Readers ist nicht verfügbar. Wenn dieses Bit festgelegt ist, sind alle folgenden Bits klar.
SCARD_STATE_EMPTY
Es gibt keine Karte im Lesegerät. Wenn dieses Bit festgelegt ist, werden alle folgenden Bits gelöscht.
SCARD_STATE_PRESENT
Es gibt eine Karte im Lesegerät.
SCARD_STATE_ATRMATCH
Es gibt eine Karte im Leser mit einem ATR, der einer der Zielkarten entspricht. Wenn dieses Bit festgelegt ist, wird auch SCARD_STATE_PRESENT festgelegt. Dieses Bit wird nur für die SCardLocateCards-funktion zurückgegeben.
SCARD_STATE_EXCLUSIVE
Die Karte im Reader wird für die ausschließliche Nutzung durch eine andere Anwendung zugewiesen. Wenn dieses Bit festgelegt ist, wird auch SCARD_STATE_PRESENT festgelegt.
SCARD_STATE_INUSE
Die Karte im Reader wird von einer oder mehreren anderen Anwendungen verwendet, kann jedoch im gemeinsam genutzten Modus verbunden sein. Wenn dieses Bit festgelegt ist, wird auch SCARD_STATE_PRESENT festgelegt.
SCARD_STATE_MUTE
Es gibt eine nicht reagierende Karte im Leser.
SCARD_STATE_UNPOWERED
Dies bedeutet, dass die Karte im Reader nicht eingeschaltet wurde.

cbAtr

Die Anzahl der Bytes im zurückgegebenen ATR.

rgbAtr[36]

ATR der eingefügten Karte mit zusätzlichen Ausrichtungsbytes.

Bemerkungen

Anmerkung

Der winscard.h-Header definiert SCARD_READERSTATE als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows XP [nur Desktop-Apps]
mindestens unterstützte Server- Windows Server 2003 [Nur Desktop-Apps]
Header- winscard.h

Siehe auch

SCardGetStatusChange-

SCardLocateCards