SCARD_READERSTATEA-Struktur (winscard.h)

Die SCARD_READERSTATE-Struktur wird von Funktionen zum Nachverfolgen von Smartcards innerhalb von Lesern verwendet.

Syntax

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

Member

szReader

Ein Zeiger auf den Namen des zu überwachenden Readers.

Legen Sie den Wert dieses Members auf "\\? PnP?\Notification" und die Werte aller anderen Member auf null, um über die Ankunft eines neuen Lesers für intelligente Karte benachrichtigt zu werden.

pvUserData

Wird nicht vom Smart Karte-Subsystem verwendet. Dieser Member wird von der Anwendung verwendet.

dwCurrentState

Aktueller Zustand des Readers, wie von der Anwendung gesehen. Dieses Feld kann einen der folgenden Werte in Kombination als Bitmaske annehmen.

Wert Bedeutung
SCARD_STATE_UNAWARE
Die Anwendung kennt den aktuellen Zustand nicht und möchte es wissen. Die Verwendung dieses Werts führt zu einer sofortigen Rückgabe von Zustandsübergangsüberwachungsdiensten. Dies wird durch alle Bits dargestellt, die auf 0 (null) festgelegt sind.
SCARD_STATE_IGNORE
Die Anwendung ist an diesem Reader nicht interessiert und sollte bei Überwachungsvorgängen nicht 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 Reader 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 ein Karte mit einer ATR vorhanden ist, die mit einer der Zielkarten übereinstimmt. Wenn dieses Bit festgelegt ist, wird von SCARD_STATE_PRESENT ausgegangen. Dieses Bit hat keine Bedeutung für SCardGetStatusChange über SCARD_STATE_PRESENT hinaus.
SCARD_STATE_EXCLUSIVE
Die Anwendung erwartet, dass die Karte im Reader für die exklusive Verwendung durch eine andere Anwendung zugewiesen wird. Wenn dieses Bit festgelegt ist, wird von SCARD_STATE_PRESENT ausgegangen.
SCARD_STATE_INUSE
Die Anwendung erwartet, dass der Karte im Reader von einer oder mehreren anderen Anwendungen verwendet wird, aber möglicherweise im freigegebenen Modus mit verbunden ist. Wenn dieses Bit festgelegt ist, wird von SCARD_STATE_PRESENT ausgegangen.
SCARD_STATE_MUTE
Die Anwendung erwartet, dass im Reader eine nicht reagierende Karte vorhanden ist.
SCARD_STATE_UNPOWERED
Dies bedeutet, dass die Karte im Reader nicht aktiviert wurde.

dwEventState

Aktueller Status des Readers, der vom Ressourcen-Manager für intelligente Karte bekannt ist. Dieses Feld kann einen der folgenden Werte in Kombination als Bitmaske annehmen.

Wert Bedeutung
SCARD_STATE_IGNORE
Dieser Reader sollte ignoriert werden.
SCARD_STATE_CHANGED
Es gibt einen Unterschied zwischen dem Zustand, der von der Anwendung angenommen wird, und dem Zustand, der dem Ressourcen-Manager bekannt ist. Wenn dieses Bit festgelegt ist, kann die Anwendung davon ausgehen, dass auf diesem Reader eine signifikante 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 Zustand dieses Readers ist nicht verfügbar. Wenn dieses Bit festgelegt ist, sind alle folgenden Bits klar.
SCARD_STATE_EMPTY
Es gibt keine Karte im Reader. Wenn dieses Bit festgelegt ist, sind alle folgenden Bits klar.
SCARD_STATE_PRESENT
Der Reader enthält eine Karte.
SCARD_STATE_ATRMATCH
Es gibt eine Karte im Reader mit einer ATR, die 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 ausschließlich für die Verwendung durch eine andere Anwendung zugeordnet. 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 aber im freigegebenen Modus mit verbunden sein. Wenn dieses Bit festgelegt ist, wird auch SCARD_STATE_PRESENT festgelegt.
SCARD_STATE_MUTE
Es gibt eine nicht reagierende Karte im Reader.
SCARD_STATE_UNPOWERED
Dies bedeutet, dass die Karte im Reader nicht aktiviert wurde.

cbAtr

Anzahl der Bytes in der zurückgegebenen ATR.

rgbAtr[36]

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

Hinweise

Hinweis

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

   
Unterstützte Mindestversion (Client) Windows XP [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 [nur Desktop-Apps]
Kopfzeile winscard.h

Weitere Informationen

SCardGetStatusChange

SCardLocateCards