Список только местных читателей SmartCard - PullRequest
1 голос
/ 20 сентября 2019

Я изо всех сил пытался найти способ перечисления только локально доступных читателей SmartCard.Или, по крайней мере, провести различие между локальными читателями и читателями, которым предоставлен доступ через сеанс RDP.

Я использую SCardListReaders, но в нем перечислены все читатели, зарегистрированные в подсистеме SmartCard, включая читателей из общих ресурсов RDP.Есть ли способ отфильтровать этот список?

Один из способов - перечислить физические устройства чтения с помощью SetupDiGetClassDevs, а затем использовать SCardListReadersWithDeviceInstanceId.Но мне нужна поддержка Windows 7 и SCardListReadersWithDeviceInstanceId была представлена ​​в Windows 8.

Любое альтернативное решение также приветствуется.

1 Ответ

0 голосов
/ 20 сентября 2019

Вы можете использовать константу SCARD_SCOPE_SYSTEM для параметра dwScope при вызове SCardEstablishContext

Удаленные считыватели SmartCard могут существовать только в контексте пользователя.

...