IOCTL_SMARTCARD_IS_PRESENT IOCTL (winsmcrd.h)
Il codice di controllo IOCTL_SMARTCARD_IS_PRESENT rileva se una smart card è attualmente rilevata. Se è presente una scheda, viene restituita immediatamente con STATUS_SUCCESS. Se non viene rilevata alcuna smart card, sottoscrive l'evento di arrivo della smart card e rimane in sospeso. La chiusura dell'handle di file annulla la sottoscrizione dell'evento.
Codice principale
Buffer di input
Nessuno.
Buffer di output
Nessuno.
Blocco di stato
Irp->IoStatus.Status è impostato su STATUS_SUCCESS se la richiesta ha esito positivo. I codici di errore possibili sono:
Codice restituito | Descrizione |
---|---|
STATUS_PENDING | Questo codice viene restituito se l'operazione è in attesa che la smart card si avvicini al campo di opzione. |
STATUS_DEVICE_BUSY | Questo codice viene restituito se l'operazione è già in attesa dell'evento presente. |
STATUS_INVALID_DEVICE_STATE | Questo codice viene restituito se il dispositivo non può accettare la richiesta. |
STATUS_INVALID_PARAMETER | Questo codice viene restituito quando i buffer di input o di output non sono validi. |
STATUS_DEVICE_POWERED_OFF | Questo codice viene restituito quando il controllo radio di prossimità è disattivato. |
Osservazioni
Quando si usa questo IOCTL, sono necessarie le azioni seguenti:
-
Il driver deve supportare CancelIo su questo IOCTL pended.
- Si tratta di una richiesta gestita dall'alimentazione. L'IOCTL pended manterrà il driver in uno stato di alimentazione D0.
- Il driver deve restituire STATUS_SUCCESS solo per il tipo supportato.
Fabbisogno
Requisito | Valore |
---|---|
intestazione | winsmcrd.h |