Поделиться через


IOCTL_SMARTCARD_IS_ABSENT IOCTL (winsmcrd.h)

Код элемента управления IOCTL_SMARTCARD_IS_ABSENT возвращается немедленно с STATUS_SUCCESS, если в настоящее время смарт-карта не обнаружена. Если обнаружены смарт-карты, IOCTL должен быть отправлен драйвером, и он должен завершить запрос на отъезд карты. Закрытие дескриптора файла автоматически отменяет подписку на событие.

Основной код

IRP_MJ_DEVICE_CONTROL

Входной буфер

Никакой.

Выходной буфер

Никакой.

Блок состояния

Irp->IoStatus.Status имеет значение STATUS_SUCCESS, если запрос выполнен успешно. Возможные коды ошибок:

Код возврата Описание
STATUS_PENDING Этот код возвращается при SCARD_ATTR_DEVICE_IN_USE идентификатора атрибута.
STATUS_DEVICE_BUSY Этот код возвращается, если операция уже ожидает отсутствующего события.
STATUS_INVALID_DEVICE_STATE Этот код возвращается, если устройство не может принять запрос.
STATUS_INVALID_PARAMETER Этот код возвращается, когда входные или выходные буферы недопустимы.
STATUS_DEVICE_POWERED_OFF Этот код возвращается при отключении радиоконтроля близкого взаимодействия.

Замечания

При использовании этого IOCTL требуются следующие действия:

  • Драйвер должен поддерживать CancelIo в этом заготовленном IOCTL.

  • Это управляемый питанием запрос. Заготовленный IOCTL будет хранить драйвер в состоянии питания D0.

Требования

Требование Ценность
заголовка winsmcrd.h

См. также

руководство по проектированию для связи с полями (NFC)

руководство по проектированию смарт-карт