阅读:1679回复:2
SmartCard高手看过来,有多少分给多少
最近I写了一个USBKey 的 SmartCard,但遇到了困难,
通过函数IoCreateDevice (DriverObject, sizeof (DEVICE_EXTENSION), &DeviceUniStrName, FILE_DEVICE_SMARTCARD, 0, TRUE, DeviceObject); 创建了一个SMARTCARD的设备,再调用SmartcardCreateLink(&LinkUnicodeStringName,&DeviceUniStrName); 创建了一个符号连接后,当成功安装驱动程序后,在注册表的HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Calais\Readers下也看到了如"VE USB READER 0"这样的键,但是调用上层SMARTCARD的库函数SCardListReaders列举不出该SMARTCARDER的名字,调用函数SCardConnect(ScardContext,"VE USB READER 0",SCARD_SHARE_SHARED,SCARD_PROTOCOL_T0 ,&ScardHandle,&dwActiveProtocol); 返回值为SCARD_E_READER_UNAVAILABLE,我该怎么联到我的读卡器啊,!!谢谢!! 有多少分给多少? |
|
沙发#
发布于:2004-07-22 15:08
谢谢majin1979,但我的还不一样,我在StartDevice后,我把ReaderCapabilities->CurrentState = PRENSENT,后来它会进行CBPower回调函数,进行Code_Reset,我调用更新了SmartLib,它也把ReaderCapabilities->CurrentState = NEGO(5),可是没有过多久又调用CBPower把电源DOWN掉了,不知为何?
|
|
板凳#
发布于:2004-07-20 14:25
我跟你遇到的类似问题,看看对你是否有帮助:
原本正常的PCSC系统,更换主板后,出现如下现象,重启后插入KEY 设备管理器中显示正常,PCSC设备列表中却无此设备,注册表也正常,通过BUSBonde跟踪,发现总线在取了设备配置符并正确配置之后,就再无任何动作,而原先的系统中,会接着复位取ATR。 在其他机器上试,都是正常的。试着卸载设备,然后更新设备及驱动,就莫名其妙的好了。你试着跟踪一下,说不定有收获 |
|
|