ACS ACR38 SAM Smart Card Reader User Manual
Page 13
![background image](/manuals/248161/13/background.png)
ACR38x – Reference Manual
Version 6.02
www.acs.com.hk
Page 13 of 40
Example:
int main()
{
long rv;
long nCardType = 15; // SLE4418 – refer to inf for more info
BYTE cbOutBuffer[10];
SCARDCONTEXT hctx;
SCARDHANDLE hsc;
DWORD dwActievProtocol;
DWORD dwBytesRet;
rv = SCardEstablishContext(SCARD_SCOPE_SYSTEM,NULL,NULL,&hctx);
if (rv != SCARD_S_SUCCESS)
return rv;
rv = SCardConnect(
hctx,
”ACS ACR38U 0”,
SCARD_SHARE_DIRECT, // This allows apps to connect to
// PC/SC even without card inserted
0,
&hsc,
&dwActiveProtocol);
if (rv != SCARD_S_SUCCESS)
{
// error handling …
return rv;
}
rv = SCardControl(hsc, IOCTL_SMARTCARD_SET_CARD_TYPE,
&nCardType, sizeof(nCardType), cbOutBuffer, 10,
&dwBytesRet);
if ( rv == SCARD_S_SUCCESS && cbOutBuffer[0] == 0x90 && cbOutBuffer[1] ==
0x00)
{
// OK
}
else . . . // other error handling
. . .
}