IOCTL_SMARTCARD_IS_PRESENT IOCTL (winsmcrd.h)

Der IOCTL_SMARTCARD_IS_PRESENT-Steuerungscode erkennt, ob derzeit eine intelligente Karte erkannt wird. Wenn ein Karte vorhanden ist, wird er sofort mit STATUS_SUCCESS zurückgegeben. Wenn keine intelligente Karte erkannt wird, abonniert es das Smart Karte-Ankunftsereignis und wird ausstehend gehalten. Durch das Schließen des Dateihandles wird das Ereignis abbestellt.

Hauptcode

IRP_MJ_DEVICE_CONTROL

Eingabepuffer

Keine.

Ausgabepuffer

Keine.

Statusblock

Irp->IoStatus.Status ist auf STATUS_SUCCESS festgelegt, wenn die Anforderung erfolgreich ist. Mögliche Fehlercodes sind:

Rückgabecode BESCHREIBUNG
STATUS_PENDING Dieser Code wird zurückgegeben, wenn der Vorgang darauf wartet, dass sich der intelligente Karte in das Funkfeld nähert.
STATUS_DEVICE_BUSY Dieser Code wird zurückgegeben, wenn der Vorgang bereits auf das aktuelle Ereignis wartet.
STATUS_INVALID_DEVICE_STATE Dieser Code wird zurückgegeben, wenn das Gerät die Anforderung nicht annehmen kann.
STATUS_INVALID_PARAMETER Dieser Code wird zurückgegeben, wenn die Eingabe- oder Ausgabepuffer ungültig sind.
STATUS_DEVICE_POWERED_OFF Dieser Code wird zurückgegeben, wenn die Näherungsfunksteuerung deaktiviert ist.

Hinweise

Bei Verwendung dieser IOCTL sind die folgenden Aktionen erforderlich:

  • Der Treiber muss CancelIo für diese pended IOCTL unterstützen.

  • Es handelt sich um eine energieverwaltete Anforderung. Die mit Stift versehene IOCTL hält den Treiber in einem D0-Energiezustand.
  • Der Treiber muss nur für den unterstützten Typ STATUS_SUCCESS zurückgeben.

Anforderungen

Anforderung Wert
Header winsmcrd.h

Weitere Informationen

Entwurfsleitfaden für Near Field Communication (NFC)

Entwurfsleitfaden für intelligente Karte