SCardGetStatusChangeA, fonction (winscard.h)
La fonction SCardGetStatusChange bloque l’exécution jusqu’à ce que la disponibilité actuelle des cartes dans un ensemble spécifique de lecteurs change.
L’appelant fournit une liste de lecteurs à surveiller par un tableau SCARD_READERSTATE et la durée maximale (en millisecondes) pendant laquelle il est prêt à attendre qu’une action se produise sur l’un des lecteurs répertoriés. Notez que SCardGetStatusChange utilise la valeur fournie par l’utilisateur dans les membres dwCurrentState du tableau SCARD_READERSTATE rgReaderStates comme définition de l’état actuel des lecteurs. La fonction retourne en cas de modification de la disponibilité, après avoir renseigné les membres dwEventState de rgReaderStates de manière appropriée.
Syntaxe
LONG SCardGetStatusChangeA(
[in] SCARDCONTEXT hContext,
[in] DWORD dwTimeout,
[in, out] LPSCARD_READERSTATEA rgReaderStates,
[in] DWORD cReaders
);
Paramètres
[in] hContext
Handle qui identifie le contexte resource manager. Le contexte du gestionnaire de ressources est défini par un appel précédent à la fonction SCardEstablishContext .
[in] dwTimeout
Durée maximale, en millisecondes, d’attente d’une action. La valeur zéro entraîne le retour immédiat de la fonction. La valeur INFINITE fait en sorte que cette fonction n’expire jamais.
[in, out] rgReaderStates
Tableau de structures SCARD_READERSTATE qui spécifient les lecteurs à watch et qui reçoivent le résultat.
Pour être averti de l’arrivée d’un nouveau lecteur de carte intelligent, définissez le membre szReader d’une structure SCARD_READERSTATE sur « \\ ? PnP ?\Notification », et définissez tous les autres membres de cette structure sur zéro.
[in] cReaders
Nombre d’éléments dans le tableau rgReaderStates .
Valeur retournée
Cette fonction retourne des valeurs différentes selon qu’elle réussit ou échoue.
Code de retour | Description |
---|---|
|
SCARD_S_SUCCESS. |
|
Code d'erreur. Pour plus d’informations, consultez Valeurs de retour de carte à puce. |
Remarques
La fonction SCardGetStatusChange est une fonction de suivi intelligente carte. Pour plus d’informations sur les autres fonctions de suivi, consultez Fonctions de suivi de carte à puce.
Exemples
Pour plus d’informations sur l’appel de cette fonction, consultez l’exemple dans SCardLocateCards.
Notes
L’en-tête winscard.h définit SCardGetStatusChange comme alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. La combinaison de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows XP [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2003 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | winscard.h |
Bibliothèque | Winscard.lib |
DLL | Winscard.dll |