I've been struggling to find a way for listing only locally available SmartCard readers. Or at least differentiate between local readers and readers shared via RDP session.
I'm using SCardListReaders
, but that lists all readers registered into the SmartCard subsystem, including readers from RDP shares. Are there any way to filter that list?
One way would be to list physical reader devices with SetupDiGetClassDevs
, then use SCardListReadersWithDeviceInstanceId
. But i need to have Windows 7 support and SCardListReadersWithDeviceInstanceId
was introduced from Windows 8.
Any alternative solution is also appreciated.