【发布时间】:2011-07-26 18:47:31
【问题描述】:
我有一个 .NET 应用程序,它直接使用 WinSCard 与智能卡上的专有应用程序通信。
当第一次插入卡时,Windows 会通知用户它正在搜索驱动程序并且失败了,我想避免这种情况。
我宁愿不为我的智能卡编写微型驱动程序,因为我已经编写了一个托管库,它通过 WinSCard 执行所有繁重的工作。有没有办法告诉 Windows 不要为该特定设备安装驱动程序?
【问题讨论】:
我有一个 .NET 应用程序,它直接使用 WinSCard 与智能卡上的专有应用程序通信。
当第一次插入卡时,Windows 会通知用户它正在搜索驱动程序并且失败了,我想避免这种情况。
我宁愿不为我的智能卡编写微型驱动程序,因为我已经编写了一个托管库,它通过 WinSCard 执行所有繁重的工作。有没有办法告诉 Windows 不要为该特定设备安装驱动程序?
【问题讨论】:
我对此知之甚少,无法确切告诉您该怎么做,但您需要安装一个没有关联驱动程序的 INF 文件(即,您是说,“我正在处理这个设备”)
【讨论】:
@Paul-Betts 是 absolutely right,我花了一些时间尝试为 MIFARE DESFire 卡安装 SmartCard Mini Driver,因为我直接使用 PCSC 并且不需要卡驱动程序。
最后我发现了一篇有用的文章,它提供了一个实用程序,允许您针对 null 迷你驱动程序注册特定卡。
提供的文件带有源文件和两个批处理文件
pcsc_no_minidriver_memory.cmd 禁用所有存储卡(根据 PC/SC v.2 存储卡规范构建的 ATR)
pcsc_no_minidriver_well_known.cmd 禁用了一些没有微型驱动程序的知名非接触式卡(NXP Desfire、NXP Mifare Plus、各种 Calypso 卡……)
它确实带有警告;
当然,请谨慎使用此软件和相关脚本,并确保您确实了解它的作用,因为它可能会阻止您的系统在您的 20$- 下正常工作确实需要其微型驱动程序才能与 CryptoAPI 一起使用的加密卡。
【讨论】:
尝试在本地组策略中禁用智能卡即插即用
在客户端计算机上,单击开始,在“搜索程序和文件”框中键入gpedit.msc,然后按 Enter。
在计算机配置下的控制台树中,单击管理模板。
在详细信息窗格中,双击 Windows 组件,然后双击 智能卡。
右击开启智能卡即插即用服务,然后点击编辑。
单击禁用,然后单击确定。
https://technet.microsoft.com/en-us/library/dd979547(v=ws.10).aspx
【讨论】: