structure SCARD_READERSTATEA (winscard.h)
La structure SCARD_READERSTATE est utilisée par les fonctions permettant de suivre cartes à puce au sein des lecteurs .
Syntaxe
typedef struct {
LPCSTR szReader;
LPVOID pvUserData;
DWORD dwCurrentState;
DWORD dwEventState;
DWORD cbAtr;
BYTE rgbAtr[36];
} SCARD_READERSTATEA, *PSCARD_READERSTATEA, *LPSCARD_READERSTATEA;
Membres
szReader
Pointeur vers le nom du lecteur surveillé.
Définissez la valeur de ce membre sur « \\ ? » PnP ?\Notification" et les valeurs de tous les autres membres à zéro pour être avertis de l’arrivée d’un nouveau lecteur de carte à puce.
pvUserData
Non utilisé par le sous-système de carte à puce . Ce membre est utilisé par l’application.
dwCurrentState
État actuel du lecteur, comme indiqué par l’application. Ce champ peut prendre l’une des valeurs suivantes, en combinaison, comme masque de bits.
Valeur | Signification |
---|---|
|
L’application n’est pas au courant de l’état actuel et souhaite savoir. L’utilisation de cette valeur entraîne un retour immédiat des services de surveillance de la transition d’état. Cette valeur est représentée par tous les bits définis sur zéro. |
|
L’application n’est pas intéressée par ce lecteur et elle ne doit pas être prise en compte lors des opérations de surveillance. Si cette valeur de bits est définie, tous les autres bits sont ignorés. |
|
L’application s’attend à ce que ce lecteur ne soit pas disponible pour une utilisation. Si ce bit est défini, tous les bits suivants sont ignorés. |
|
L’application s’attend à ce qu’il n’y ait pas de carte dans le lecteur. Si ce bit est défini, tous les bits suivants sont ignorés. |
|
L’application s’attend à ce qu’il y ait une carte dans le lecteur. |
|
L’application s’attend à ce qu’il y ait une carte dans le lecteur avec un ATR qui correspond à l’une des cartes cibles. Si ce bit est défini, SCARD_STATE_PRESENT est supposé. Ce bit n’a aucun sens pour SCardGetStatusChange au-delà de SCARD_STATE_PRESENT. |
|
L’application s’attend à ce que la carte du lecteur soit allouée pour une utilisation exclusive par une autre application. Si ce bit est défini, SCARD_STATE_PRESENT est supposé. |
|
L’application s’attend à ce que la carte du lecteur soit utilisée par une ou plusieurs autres applications, mais qu’elle peut être connectée en mode partagé. Si ce bit est défini, SCARD_STATE_PRESENT est supposé. |
|
L’application s’attend à ce qu’il y ait une carte sans réponse dans le lecteur. |
|
Cela implique que la carte dans le lecteur n’a pas été alimentée. |
dwEventState
État actuel du lecteur , comme le nom de la carte à puce resource manager. Ce champ peut prendre l’une des valeurs suivantes, en combinaison, comme masque de bits.
Valeur | Signification |
---|---|
|
Ce lecteur doit être ignoré. |
|
Il existe une différence entre l’état cru par l’application et l’état connu par le gestionnaire de ressources. Lorsque ce bit est défini, l’application peut supposer qu’une modification d’état significative s’est produite sur ce lecteur. |
|
Le nom de lecteur donné n’est pas reconnu par le gestionnaire de ressources. Si ce bit est défini, SCARD_STATE_CHANGED et SCARD_STATE_IGNORE seront également définis. |
|
L’état réel de ce lecteur n’est pas disponible. Si ce bit est défini, tous les bits suivants sont clairs. |
|
Il n’y a pas de carte dans le lecteur. Si ce bit est défini, tous les bits suivants sont clairs. |
|
Il y a une carte dans le lecteur. |
|
Il existe une carte dans le lecteur avec un ATR correspondant à l’une des cartes cibles. Si ce bit est défini, SCARD_STATE_PRESENT sera également défini. Ce bit est retourné uniquement sur la fonction SCardLocateCards. |
|
La carte du lecteur est allouée pour une utilisation exclusive par une autre application. Si ce bit est défini, SCARD_STATE_PRESENT sera également défini. |
|
La carte du lecteur est utilisée par une ou plusieurs autres applications, mais peut être connectée en mode partagé. Si ce bit est défini, SCARD_STATE_PRESENT sera également défini. |
|
Il existe une carte non répondive dans le lecteur. |
|
Cela implique que la carte dans le lecteur n’a pas été alimentée. |
cbAtr
Nombre d’octets dans l’ATR retourné.
rgbAtr[36]
ATR de la carte insérée, avec des octets d’alignement supplémentaires.
Remarques
Note
L’en-tête winscard.h définit SCARD_READERSTATE en tant qu’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. Le mélange 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.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows XP [applications de bureau uniquement] |
serveur minimum pris en charge | Windows Server 2003 [applications de bureau uniquement] |
d’en-tête | winscard.h |