IOCTL_SMARTCARD_IS_PRESENT IOCTL (winsmcrd.h)
IOCTL_SMARTCARD_IS_PRESENT 制御コードは、スマート カードが現在検出されているかどうかを検出します。 カードが存在する場合は、STATUS_SUCCESSですぐに返されます。 スマート カードが検出されない場合は、スマート カード到着イベントをサブスクライブし、保留中の状態が維持されます。 ファイル ハンドルを閉じると、イベントのサブスクライブが解除されます。
メジャー コード
入力バッファー
何一つ。
出力バッファー
何一つ。
状態ブロック
Irp->IoStatus.Status は、要求が成功した場合に STATUS_SUCCESS に設定されます。 考えられるエラー コードは次のとおりです。
リターン コード | 形容 |
---|---|
STATUS_PENDING | このコードは、操作がスマート カードが無線フィールドに近づくのを待機している場合に返されます。 |
STATUS_DEVICE_BUSY | このコードは、操作が現在のイベントを既に待機している場合に返されます。 |
STATUS_INVALID_DEVICE_STATE | このコードは、デバイスが要求を受け入れられない場合に返されます。 |
STATUS_INVALID_PARAMETER | このコードは、入力バッファーまたは出力バッファーが無効な場合に返されます。 |
STATUS_DEVICE_POWERED_OFF | このコードは、近接無線制御がオフのときに返されます。 |
備考
この IOCTL を使用する場合は、次のアクションが必要です。
-
ドライバーは、このペンド IOCTL で CancelIo をサポートする必要があります。
- これは、電源管理された要求です。 ペンドされた IOCTL は、ドライバーを D0 電源状態に保ちます。
- ドライバーは、サポートされている型に対してのみSTATUS_SUCCESSを返す必要があります。
必要条件
要件 | 価値 |
---|---|
ヘッダー | winsmcrd.h |