VC封装USB接口的智能卡读写.doc

上传人:sk****8 文档编号:3535102 上传时间:2019-06-02 格式:DOC 页数:2 大小:36.50KB
下载 相关 举报
VC封装USB接口的智能卡读写.doc_第1页
第1页 / 共2页
VC封装USB接口的智能卡读写.doc_第2页
第2页 / 共2页
亲,该文档总共2页,全部预览完了,如果喜欢就下载吧!
资源描述

1、VC 封装 USB 接口的智能卡读写(应用层) 学习进程 2009-10-20 00:14 阅读 42 评论 0 字号: 大 中 小 VC 封装 USB 接口的智能卡读写(应用层) 编译时需要包含头文件“Winscardh”和库文件 winscard1ib。 第一步要通过初始化连接函数获得设备的连接旬柄: SCARDCONTEXT hSC = NULL; LONG IReturn = 0: IReturn=SCardEstablishContext(SCARD COPE SERNULLNULL 第三个参数表示连接的共享模式, 另外两个模式是 SCARD_ SHARE SHARED 和 SCAR

2、D_SHARE_DIRECT。第四个参数指定首选的通信协议类型包括 T:0 和 T=1,dwActiveProtocol 返回最终确定的通信协议类型。注意:调用此函数时读写器中如果没有智能卡则会返回相应错误。 以上两个函数可以实现卡片的检测? 第四步与卡片进行交互: 1、获得智能卡的句柄后就可以对卡片进行操作了,如读取 ATR: char szReaderName300: DWORD dwATRLength = 40; BYTE pbyATR40; DW 0RD dwCardState = 0: IReturn = SCardStatus(hCardHandle, szReaderName,

3、BYTE pbyCommand20; 此处加入设置要发送的命令的代码 BYTE pbyReceived100; DW0RD dwRecLength = sizeof(pbyReceived); IReturn = SCardTransmit(hCardHandle, & Scard10Request,pbyCommand,5 ,NULL ,pbyReceived ,& dwRecLength): ScardlORequestdwProtocol 的值应该设置为最终确定的通信协议类型,第四个参数指定要发送的命令的长度,如果调用成功,则 dwRecLength 的值就是收到的应答的长度。 注:在开

4、始事务处理前要调用 SCardBeginTransaction(hCardHandle)。该函数启动一个事务,启动前等待对 hCardHandle 操作的所以事务结束。启动后阻塞所有对该卡片存取的应用程序。 结束事务处理时要调用SCardBeginTransaction(hCardHandle,SCARD_LEAVE_CARD)。该函数对应于之前声明的事务,使得其他应用程序对卡片的访问激活。 第五步断开与卡片的连接: 当对卡片的操作完成后应该断开与卡片的连接: IReturn=SCardDisconnecthCardHandle,SCARD_UNPOWER_ CARD); 第二个参数指定断开连接时读写器要执行的操作,其他的可选值包括SCARD_LEAVE CARD、SCARD_RESET CARD 和SCARD_EJECT_CARD。 第六步释放读卡器设备句柄: 在对所有的读写器的操作都完成以后,需要释放设备的连接句柄:SCardReleaseContext(hSC);

展开阅读全文
相关资源
相关搜索
资源标签

当前位置:首页 > 实用文档资料库 > 策划方案

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。