次の方法で共有


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 このコードは、属性 ID がSCARD_ATTR_DEVICE_IN_USEされたときに返されます。
STATUS_DEVICE_BUSY このコードは、操作が既に不在イベントを待機している場合に返されます。
STATUS_INVALID_DEVICE_STATE このコードは、デバイスが要求を受け入れられない場合に返されます。
STATUS_INVALID_PARAMETER このコードは、入力バッファーまたは出力バッファーが無効な場合に返されます。
STATUS_DEVICE_POWERED_OFF このコードは、近接無線制御がオフのときに返されます。

備考

この IOCTL を使用する場合は、次のアクションが必要です。

  • ドライバーは、このペンド IOCTL で CancelIo をサポートする必要があります。

  • これは、電源管理された要求です。 ペンドされた IOCTL は、ドライバーを D0 電源状態に保ちます。

必要条件

要件 価値
ヘッダー winsmcrd.h

関連項目

近距離無線通信 (NFC) 設計ガイド

スマート カード設計ガイド