SCardGetStatusChangeA-Funktion (winscard.h)

Die SCardGetStatusChange-Funktion blockiert die Ausführung, bis sich die aktuelle Verfügbarkeit der Karten in einem bestimmten Satz von Lesern ändert.

Der Aufrufer stellt eine Liste der Leser bereit, die von einem SCARD_READERSTATE Array überwacht werden sollen, und die maximale Zeit (in Millisekunden), die bereit ist, auf eine Aktion für einen der aufgeführten Reader zu warten. Beachten Sie, dass SCardGetStatusChange den vom Benutzer bereitgestellten Wert in den dwCurrentState-Membern des rgReaderStates-SCARD_READERSTATE Arrays als Definition des aktuellen Zustands der Leser verwendet. Die Funktion gibt zurück, wenn sich die Verfügbarkeit ändert, nachdem die dwEventState-Member von rgReaderStates entsprechend ausgefüllt wurden.

Syntax

LONG SCardGetStatusChangeA(
  [in]      SCARDCONTEXT         hContext,
  [in]      DWORD                dwTimeout,
  [in, out] LPSCARD_READERSTATEA rgReaderStates,
  [in]      DWORD                cReaders
);

Parameter

[in] hContext

Ein Handle, das den Ressourcen-Manager-Kontext identifiziert. Der Ressourcen-Manager-Kontext wird durch einen vorherigen Aufruf der Funktion SCardEstablishContext festgelegt.

[in] dwTimeout

Die maximale Wartezeit für eine Aktion in Millisekunden. Der Wert null bewirkt, dass die Funktion sofort zurückgegeben wird. Der Wert INFINITE führt dazu, dass für diese Funktion kein Timeout entsteht.

[in, out] rgReaderStates

Ein Array von SCARD_READERSTATE Strukturen, die die Leser angeben, die watch sollen, und das Ergebnis empfängt.

Um über die Ankunft eines neuen Smart Karte-Reader benachrichtigt zu werden, legen Sie das szReader-Element einer SCARD_READERSTATE-Struktur auf "\\?" fest. PnP?\Notification", und legen Sie alle anderen Elemente dieser Struktur auf 0 fest.

Wichtig Jedes Element jeder Struktur in diesem Array muss auf null initialisiert und dann nach Bedarf auf bestimmte Werte festgelegt werden. Wenn dies nicht geschieht, schlägt die Funktion in Situationen fehl, in denen Remotelesegeräte Karte.
 

[in] cReaders

Die Anzahl der Elemente im rgReaderStates-Array .

Rückgabewert

Diese Funktion gibt unterschiedliche Werte zurück, je nachdem, ob sie erfolgreich ist oder fehlschlägt.

Rückgabecode BESCHREIBUNG
Erfolgreich
SCARD_S_SUCCESS.
Fehler
Ein Fehlercode. Weitere Informationen finden Sie unter Smartcard-Rückgabewerte.

Hinweise

Die SCardGetStatusChange-Funktion ist eine intelligente Karte Nachverfolgungsfunktion. Weitere Informationen zu anderen Nachverfolgungsfunktionen finden Sie unter Smartcard-Nachverfolgungsfunktionen.

Beispiele

Informationen zum Aufrufen dieser Funktion finden Sie im Beispiel in SCardLocateCards.

Hinweis

Der winscard.h-Header definiert SCardGetStatusChange als Alias, der automatisch die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit nicht codierungsneutralem Code 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
Unterstützte Mindestversion (Client) Windows XP [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile winscard.h
Bibliothek Winscard.lib
DLL Winscard.dll

Weitere Informationen

SCARD_READERSTATE

SCardCancel

SCardEstablishContext

SCardLocateCards