我的系统中有两个读卡器 (HID OMNIKEY 5321)(每个读卡器执行不同的功能)
- 读卡器 1 - “智能卡读卡器0"
- 读卡器 2 - “智能卡读卡器1"
在我的程序中设置了
- “智能卡读卡器0“ - 动作 1
- “智能卡读卡器1“ - 动作 2
但有时(无需重新启动,可能失去联系)
- 读卡器 1 的名称为“智能卡读卡器1"
- 读卡器 2 的名称为“智能卡读卡器0"
并且该程序无法满足用户的需求。
我在 WinScard.dll 中使用 SCardGetStatusChange (需要读卡器的名称)
该怎么办?
有没有办法更改读卡器的名称(固件、驱动程序...)?
可以使用读卡器的序列号吗?
我也看了,但没有结果智能卡读卡器命名:移除任何读卡器时,其余读卡器的名称会发生变化 https://stackoverflow.com/questions/2636055/smartcard-reader-naming-when-removing-any-reader-the-name-of-the-rest-changes
PCSC 智能卡读卡器“友好名称”是如何构造的? https://stackoverflow.com/questions/10813041/how-are-pcsc-smart-card-reader-friendly-names-constructed
找到了解决方案使用 WinSCard 获取 PCSC 读卡器序列号 https://stackoverflow.com/questions/6940824/getting-pcsc-reader-serial-number-with-winscard
序列号读取器
...
SCardConnect(hContext, readerName, SCARD_SHARE_DIRECT, SCARD_PROTOCOL_UNDEFINED, ref hCard, ref protocol);
SCardGetAttrib(hCard, SCARD_ATTR_VENDOR_IFD_SERIAL_NO, receiveBuffer, ref receivebufferLen);
...
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)