智能卡读卡器命名

系统中有两个读卡器(HID OMNIKEY 5321)(每个读卡器执行不同的function)

  • 读者1 – “智能卡读卡器0
  • 读者2 – “智能卡读卡器1

在我的程序中设置了

  • “智能卡读卡器0 ” – 动作1
  • “智能卡读卡器1 ” – 行动2

但有时候(没有重启,也许失去联系)

  • 读者1获得名称“智能卡读卡器1
  • 读者2获得名称“智能卡读卡器0

并且该程序不能满足用户的需求。 我在WinScard.dll中使用SCardGetStatusChange(需要读者的名字)

该怎么办? 有没有办法更改阅读器的名称(固件,驱动程序……)? 是否可以使用阅读器的序列号?

我也看了,但没有结果智能卡读卡器命名:当删除任何读卡器时,其余的名称改变 如何构建PCSC智能卡读卡器的“友好名称”?

找到了一个解决方案使用WinSCard获取PCSC阅读器序列号

序列号阅读器

... SCardConnect(hContext, readerName, SCARD_SHARE_DIRECT, SCARD_PROTOCOL_UNDEFINED, ref hCard, ref protocol); SCardGetAttrib(hCard, SCARD_ATTR_VENDOR_IFD_SERIAL_NO, receiveBuffer, ref receivebufferLen); ... 

也许您应该专注于插入/连接到阅读器而不是阅读器本身的智能卡,并使用卡特定信息(即序列号或标签)来选择正确的阅读器。