PC/SC Guide
Prox–DU & Prox–SU
www.gemalto.com
DOC119811A Public Use Page 66/129
SCardControl Function
The SCardControl function gives you direct control of the reader. You can call it any time
after a successful call to SCardConnect and before a successful call to SCardDisconnect.
The effect on the state of the reader depends on the control code.
Syntax:
LONG WINAPI SCardControl(
__in SCARDHANDLE hCard,
__in DWORD dwControlCode,
__in LPCVOID lpInBuffer,
__in DWORD nInBufferSize,
__out LPVOID lpOutBuffer,
__in DWORD nOutBufferSize,
__out LPDWORD lpBytesReturned
);
Parameters:
hCard [in]
Reference value returned from SCardConnect.
dwControlCode [in]
Control code for the operation. This value identifies the specific operation to be
performed.
lpInBuffer [in]
Pointer to a buffer that contains the data required to perform the operation. This
parameter can be NULL if the dwControlCode parameter specifies an operation that
does not require input data.
nInBufferSize [in]
Size, in bytes, of the buffer pointed to by lpInBuffer.
lpOutBuffer [out]
Pointer to a buffer that receives the operation's output data. This parameter can be
NULL if the dwControlCode parameter specifies an operation that does not produce
output data.
nOutBufferSize [in]
Size, in bytes, of the buffer pointed to by lpOutBuffer.
lpBytesReturned [out]
Pointer to a DWORD that receives the size, in bytes, of the data stored into the
buffer pointed to by lpOutBuffer.
Return Value:
This function returns different values depending on whether it succeeds or fails:
Success: SCARD_S_SUCCESS.
Failure: An error code. For more information, see Smart Card Return Values.
Remarks: