0

是否可以通过 WinSCard api 检测智能卡读卡器中何时有多个智能卡?我正在读取卡片ID,但是当有多张卡片时,它变得模棱两可,应该返回哪一张。所以我想禁止这种情况并返回错误消息。

4

2 回答 2

0

ACR-1252 阅读器只有一个非接触式接口。当您尝试同时连接(放置)两张非接触式智能卡时,读卡器固件有责任选择将哪一张连接到其插槽。一些阅读器供应商允许您将其固件配置为在这种情况下表现不同。我不知道你的读者是否有这样的能力,但我非常怀疑。

于 2017-10-02T12:37:22.740 回答
0

如果有多个卡,即多个读卡器正在使用。这里 winscard API 函数 - SCardListReadersA() 将返回连接到系统的读卡器的名称,例如,

 if one reader then "one reader"NULL|NULL|garbage
 if two reader then "one reader"NULL"second reader"NULL|NULL|garbage

当您连接到读卡器时,您需要在函数中传递读卡器名称 - SCardConnectA() 和使用函数 SCardTransmit() 获得的响应 (ID) 来自使用函数 SCardConnectA() 连接的读卡器和卡。

希望这些信息会有所帮助。

于 2016-07-25T05:58:16.557 回答