3

我在我的 Dotnet 智能卡应用程序中使用 winscard.dll。我的阅读器 Omnikey 5321 同时具有接触式和非接触式界面,它们被检测为两个不同的阅读器。非接触式的名称中有字母“CL”。我手动选择阅读器并做我需要做的一切都没有问题。

但是,是否有可靠的方法,使用 SCardGetAttrib 或其他调用来确定这些阅读器中的哪些支持 ISO14443 - 即 EMV 非接触式?我最终想要一个快速的“选择非接触式设置”按钮,该按钮足够通用,可以与所有 PC/SC 阅读器一起使用,因此如果没有这样的界面,我还可以禁用非接触式选项。

4

1 回答 1

2

不,没有这种方法仅仅是因为 PCSC 比非接触式技术更老(古代的非接触式芯片更老,但需要特殊的读卡器和驱动程序,所以没有重叠)。因此,只有阅读器名称的命名约定以制造商相关的方式提供此信息。在实践中,这无关紧要。您没有标记您的阅读器,以便用户能够选择正确的阅读器,但通常只是要求用户将卡插入/放置在阅读器上。然后,PCSC 将允许检测加载了哪个阅读器,只要它只有一个。

于 2015-09-10T19:37:04.163 回答