IOCTL_SMARTCARD_POWER control code

The IOCTL_SMARTCARD_POWER request consists of three minor IOCTL codes: SCARD_COLD_RESET, SCARD_WARM_RESET and SCARD_POWER_DOWN.

  • SCARD_COLD_RESET
    Turn off the smart card, and then turn it on again.

  • SCARD_WARM_RESET
    Perform a warm reset (a reset of the card that does not require a power cycle) of the smart card.

  • SCARD_POWER_DOWN
    Turn off power to the smart card.

Input Parameters

  • Irp->AssociatedIrp.SystemBuffer
    Contains the minor IOCTL code.

  • Parameters.DeviceIoControl.InputBufferLength
    Contains the size of the output buffer. Must be at least 33 bytes to hold the answer-to-request (ATR) data.

Output Parameters

  • Irp->AssociatedIrp.SystemBuffer
    Used by SCARD_COLD_RESET and SCARD_WARM_RESET to store the ATR data that comes from the smart card.

I/O Status Block

TheInformation member is set to the length of the ATR that is returned by the smart card.

The Status member is set to one of the values in the following table.

Value Meaning

STATUS_SUCCESS

Successful operation.

STATUS_UNRECOGNIZED_MEDIA

Unknown or unsupported smart card inserted.

STATUS_NO_MEDIA

No smart card is inserted in the reader.

STATUS_IO_TIMEOUT

The operation timed out.

 

Requirements

Header

Winsmcrd.h (include Winsmcrd.h)

 

 

Send comments about this topic to Microsoft