SCardGetStatusChangeA-Funktion (winscard.h)

Die SCardGetStatusChange-Funktion blockiert die Ausführung, bis die aktuelle Verfügbarkeit der Karten in einer bestimmten Gruppe von Leseränderungen geändert wird.

Der Anrufer stellt eine Liste der Leser bereit, die von einem SCARD_READERSTATE-Array und der maximalen Zeit (in Millisekunden) überwacht werden sollen, die bereit ist, auf eine Aktion zu warten, die für einen der aufgeführten Leser auftritt. Beachten Sie, dass SCardGetStatusChange den vom Benutzer bereitgestellten Wert in den dwCurrentState-Mitgliedern des rgReaderStatesSCARD_READERSTATE Array als Definition des aktuellen Zustands der Leser verwendet. Die Funktion gibt zurück, wenn eine Änderung der Verfügbarkeit vorhanden ist, nachdem die dwEventState-Elemente 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 Zeitdauer in Millisekunden, um auf eine Aktion zu warten. Ein Wert von Null bewirkt, dass die Funktion sofort zurückgegeben wird. Ein Wert von UNENDLICH bewirkt, dass diese Funktion niemals timeout ist.

[in, out] rgReaderStates

Ein Array von SCARD_READERSTATE Strukturen, die den Lesern zur Überwachung angeben und das Ergebnis erhält.

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

Wichtig Jedes Element jeder Struktur in diesem Array muss auf Null initialisiert und dann bei Bedarf auf bestimmte Werte festgelegt werden. Wenn dies nicht geschehen ist, schlägt die Funktion in Situationen fehl, in denen Remotekartenleser enthalten sind.
 

[in] cReaders

Die Anzahl der Elemente im rgReaderStates-Array .

Rückgabewert

Diese Funktion gibt unterschiedliche Werte zurück, je nachdem, ob die Funktion 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 Funktion SCardGetStatusChange ist eine Smartcardnachverfolgungsfunktion . 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 die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der codierungsneutralen Aliase mit Code, der nicht codierungsneutral ist, kann zu Ü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]
Zielplattform Windows
Kopfzeile winscard.h
Bibliothek Winscard.lib
DLL Winscard.dll

Siehe auch

SCARD_READERSTATE

SCardCancel

SCardEstablishContext

SCardLocateCards