struttura SCARD_READERSTATEA (winscard.h)

La struttura SCARD_READERSTATE viene usata dalle funzioni per tenere traccia delle smart card all'interno dei lettori.

Sintassi

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

Members

szReader

Puntatore al nome del lettore monitorato.

Impostare il valore di questo membro su "\\? PnP?\Notification" e i valori di tutti gli altri membri a zero per ricevere una notifica dell'arrivo di un nuovo lettore di smart card.

pvUserData

Non utilizzato dal sottosistema smart card. Questo membro viene usato dall'applicazione.

dwCurrentState

Stato corrente del lettore, come illustrato dall'applicazione. Questo campo può assumere uno dei valori seguenti, in combinazione, come maschera di bit.

Valore Significato
SCARD_STATE_UNAWARE
L'applicazione non è a conoscenza dello stato corrente e vuole sapere. L'uso di questo valore comporta un ritorno immediato dai servizi di monitoraggio della transizione dello stato. Questo valore è rappresentato da tutti i bit impostati su zero.
SCARD_STATE_IGNORE
L'applicazione non è interessata a questo lettore e non deve essere considerata durante le operazioni di monitoraggio. Se questo valore di bit è impostato, tutti gli altri bit vengono ignorati.
SCARD_STATE_UNAVAILABLE
L'applicazione prevede che questo lettore non sia disponibile per l'uso. Se questo bit è impostato, tutti i bit seguenti vengono ignorati.
SCARD_STATE_EMPTY
L'applicazione prevede che non vi sia alcuna scheda nel lettore. Se questo bit è impostato, tutti i bit seguenti vengono ignorati.
SCARD_STATE_PRESENT
L'applicazione prevede che nel lettore sia presente una scheda.
SCARD_STATE_ATRMATCH
L'applicazione prevede che nel lettore sia presente una scheda con atr che corrisponde a una delle schede di destinazione. Se questo bit è impostato, si presuppone SCARD_STATE_PRESENT. Questo bit non ha alcun significato per SCardGetStatusChange oltre SCARD_STATE_PRESENT.
SCARD_STATE_EXCLUSIVE
L'applicazione prevede che la scheda nel lettore sia allocata per l'uso esclusivo da parte di un'altra applicazione. Se questo bit è impostato, si presuppone SCARD_STATE_PRESENT.
SCARD_STATE_INUSE
L'applicazione prevede che la scheda nel lettore sia in uso da una o più altre applicazioni, ma potrebbe essere connessa in modalità condivisa. Se questo bit è impostato, si presuppone SCARD_STATE_PRESENT.
SCARD_STATE_MUTE
L'applicazione prevede che nel lettore sia presente una scheda che non risponde.
SCARD_STATE_UNPOWERED
Ciò implica che la scheda nel lettore non è stata accesa.

dwEventState

Stato corrente del lettore, noto come gestione risorsesmart card. Questo campo può assumere uno dei valori seguenti, in combinazione, come maschera di bit.

Valore Significato
SCARD_STATE_IGNORE
Questo lettore deve essere ignorato.
SCARD_STATE_CHANGED
Esiste una differenza tra lo stato creduto dall'applicazione e lo stato noto dal gestore risorse. Quando questo bit è impostato, l'applicazione può presupporre che si sia verificata una modifica significativa dello stato nel lettore.
SCARD_STATE_UNKNOWN
Il nome del lettore specificato non viene riconosciuto dal gestore risorse. Se questo bit è impostato, verranno impostati anche SCARD_STATE_CHANGED e SCARD_STATE_IGNORE.
SCARD_STATE_UNAVAILABLE
Lo stato effettivo di questo lettore non è disponibile. Se questo bit è impostato, tutti i bit seguenti sono chiari.
SCARD_STATE_EMPTY
Non c'è scheda nel lettore. Se questo bit è impostato, tutti i bit seguenti saranno chiari.
SCARD_STATE_PRESENT
C'è una scheda nel lettore.
SCARD_STATE_ATRMATCH
Nel lettore è presente una scheda con atr corrispondente a una delle schede di destinazione. Se questo bit è impostato, verrà impostato anche SCARD_STATE_PRESENT. Questo bit viene restituito solo nella funzione SCardLocateCards .
SCARD_STATE_EXCLUSIVE
La scheda nel lettore viene allocata per l'uso esclusivo da parte di un'altra applicazione. Se questo bit è impostato, verrà impostato anche SCARD_STATE_PRESENT.
SCARD_STATE_INUSE
La scheda nel lettore è in uso da una o più applicazioni, ma può essere connessa in modalità condivisa. Se questo bit è impostato, verrà impostato anche SCARD_STATE_PRESENT.
SCARD_STATE_MUTE
C'è una scheda che non risponde nel lettore.
SCARD_STATE_UNPOWERED
Ciò implica che la scheda nel lettore non è stata accesa.

cbAtr

Numero di byte nell'ATR restituito.

rgbAtr[36]

ATR della scheda inserita, con byte di allineamento aggiuntivi.

Commenti

Nota

L'intestazione winscard.h definisce SCARD_READERSTATE come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice che non è indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzioni.

Requisiti

   
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Intestazione winscard.h

Vedi anche

SCardGetStatusChange

SCardLocateCards