2016-07-25 61 views
0

是否有可能通過WinSCard api檢測智能卡讀卡器中是否有多個智能卡?我正在讀卡片ID,但是當有多張卡片時,它變得模糊不清,應該返回哪一張。所以我想禁止這種情況並返回錯誤消息。PCSC檢測多個智能卡

+0

相關[問題](http://stackoverflow.com/q/37755043/1435475)。 – guidot

回答

0

如果有多張卡即多個閱讀器正在使用。這裏winscard API函數 - SCardListReadersA()將返回閱讀器的名稱/ s的連接到系統一樣,

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()連接的讀卡器和卡。

希望這些信息對您有所幫助。

+0

感謝您的回覆。我只使用一個讀卡器,並且當讀卡器中有多張卡時,我想防止讀卡ID。 – eko

+0

多個卡在一個單一的閱讀器!讀者是否擁有更多的芯片工作站?或者它是混合閱讀器(聯繫人+非接觸式) – Arjun

+0

不,它只支持一次讀取一張卡,並且只支持非接觸式卡。閱讀器型號爲acr-1252。 – eko

0

ACR-1252閱讀器只有一個非接觸式接口。當您嘗試同時連接(敷設)兩個非接觸式智能卡時,閱讀器固件的責任是選擇哪一個連接到其插槽。 某些讀卡器供應商允許您在這種情況下配置其固件的行爲不同。我不知道你的讀者是否有這樣的能力,但我非常懷疑它。