我正在写智能卡应用程序。此应用程序连接读卡器中的卡,有时使用它。我需要观察读卡器何时不再可用(卡被弹出或读卡器从USB中移除)。
使用SCardStatusChange观看读者。此功能需要观看读者姓名。
我将带有卡的两个读卡器插入USB插槽。它们被认为是“USB智能卡读卡器0”和“USB智能卡读卡器1”。我删除了一个阅读器。 Windows称,“USB智能卡读卡器1”仍然连接。我插入它 - 再次可用。现在我删除第二个。 Windows仍然连接“USB智能卡读卡器1”。这就是问题,因为它应该是“USB智能卡读卡器0”仍然连接。跟踪例程无法查看读者,因为它的名称已更改。
是驱动程序问题还是XP智能卡子系统问题?使用的驱动程序是USB CCID兼容版本5.2.3790.1830(VID 076B,PID A021),usbccid.sys。
答案 0 :(得分:2)
我们在一个项目中遇到了这个问题,并通过遍历每个可用的阅读器并检查是否在该阅读器中插入了卡来处理它。您将在几个品牌的USB读卡器中遇到这个命名问题。
我公司的产品可以让您将智能卡与网站集成;我们的一个演示列出了当前可用的智能卡读卡器,它可以帮助您测试不同的读卡器场景:https://cardboss.cometway.com/content.agent?page_name=GetReaders+Demo