在Windows 8商店应用程序中,我想从智能卡中读取数据。安装SmartCard读卡器(USB设备)后,我可以通过Windows.Devices.Enumeration
命名空间读取其设备路径和连接状态。甚至设备接口ID也是可检索的(50dd5230-ba8a-11d1-bf5d-0000f805f530),我把它作为应用程序清单文件中的必需功能。
对于与设备的交互,我使用调用CreateDeviceAccessInstance
方法的C ++组件。但此调用始终会导致ACCESS_DENIED
异常。
进一步的研究告诉我,与自定义硬件设备(所有不是打印机,麦克风,鼠标......)的交互需要在发布到Windows 8驱动程序存储区的设备驱动程序中进行多次调整。 我很乐意这样做,但我不是IHV,并且想使用通用驱动程序和通用接口。
有人能给我一个提示如何从这里开始并使用USB SmartCard设备的通用接口吗?
答案 0 :(得分:0)
这不是一个真正的答案,但我有同样的问题,我花了很长时间在互联网上寻找关于这个主题的难以找到的信息,I'd like to share my results。
Windows 8.1为(虚拟)智能卡(API reference,sample)提供了一些特定的API,但它们似乎只能用于身份验证,并且无法将APDU命令发送到此刻的卡片(见Himanshu Soni的this comment)。我想可以使用新的USB API直接与读者对话,但是你必须自己实现整个协议。