IOCTL_SMARTCARD_TRANSMIT (Windows Embedded CE 6.0)
1/6/2010
This code transmits data to and from the currently inserted smart card.
Parameters
- dwOpenData
[in] Handle returned from a call to the smart card reader driver's XXX_Open (Device Manager) function.
- dwCode
[in] Specifies this code.
- pBufIn
[in] A pointer to a SCARD_IO_REQUEST structure followed by the data to be transmitted.
- dwLenIn
[in] The size of the SCARD_IO_REQUEST structure plus the size of the data to be transmitted.
- pBufOut
[out] Receives data transmitted from the smart card. This buffer consists of an SCARD_IO_REQUEST structure followed by the transmitted data.
- dwLenOut
[out] The size of the SCARD_IO_REQUEST structure plus the size of the data transmitted from the smart card.
- pdwActualOut
Ignored.
Return Values
One of the following status values.
Status | Description |
---|---|
STATUS_SUCCESS |
The transmission was successful. |
STATUS_NO_MEDIA |
There is no card in reader. |
STATUS_IO_TIMEOUT |
The operation timed out. |
STATUS_INVALID_DEVICE_STATE |
The protocol in the header does not match the previously selected card protocol. |
Remarks
The member dwProtocol must be set to the previously selected protocol, and cbPciLength must be set to the size of the SCARD_IO_REQUEST structure itself, usually eight. The input buffer and the output buffer pointers can point to the same memory area It is the smart card reader driver's responsibility to avoid overwriting the input data. Use the Smart Card Driver Library to ensure that the input data is not overwritten.
Requirements
Header | winsmcrd.h |
Windows Embedded CE | Windows CE 3.0 and later |