Searching for a driver each time a smart card is connected
This behavior occurs when Windows detects a smart card with no driver — typically when the manufacturer did not package the CSP or minidriver using an .inf file.
Two solutions are available:
Alternative A — Disable Smart Card Plug and Play
Via Group Policy
- Press Win+R, type
gpedit.msc, press Enter - Navigate to Computer Configuration → Administrative Templates → Windows Components → Smart Card
- Double-click Turn on Smart Card Plug and Play service
- Select Disabled, click OK
Via Registry
Create a .reg file with the following content and apply it:
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\ScPnP] "EnableScPnP"=dword:00000000 [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Policies\Microsoft\Windows\ScPnP] "EnableScPnP"=dword:00000000
Alternative B — Create a fake driver
Step 1 — Find the historical bytes
Open Device Manager, locate the smart card showing the error. Go to Properties → Details → Hardware IDs — look for an entry beginning with SCFILTER\.
certutil -scinfo (here: Astrid in ASCII)Step 2 — Create the .inf file
Create a file with the .inf extension. Replace SCFILTER\CID_51FF0800 with your actual SCFILTER hardware ID:
;
; FabrikamVendor Smartcard Minidriver — x86 and x64
;
[Version]
Signature="$Windows NT$"
Class=SmartCard
ClassGuid={990A2BD7-E738-46c7-B26F-1CF8FB9F1391}
Provider=%ProviderName%
DriverVer=04/03/2013,1.0.0.0
[Manufacturer]
%ProviderName%=Minidriver,NTamd64,NTamd64.6.1,NTx86,NTx86.6.1
[Minidriver.NTamd64]
%CardDeviceName%=Minidriver64_Install,SCFILTER\CID_51FF0800
[Minidriver.NTx86]
%CardDeviceName%=Minidriver32_Install,SCFILTER\CID_51FF0800
[Minidriver.NTamd64.6.1]
%CardDeviceName%=Minidriver64_61_Install,SCFILTER\CID_51FF0800
[Minidriver.NTx86.6.1]
%CardDeviceName%=Minidriver32_61_Install,SCFILTER\CID_51FF0800
[Minidriver64_61_Install.NT]
Include=umpass.inf
Needs=UmPass
[Minidriver32_61_Install.NT]
AddReg=AddRegDefault
Include=umpass.inf
Needs=UmPass
[Minidriver64_61_Install.NT.Services]
Include=umpass.inf
Needs=UmPass.Services
[Minidriver32_61_Install.NT.Services]
Include=umpass.inf
Needs=UmPass.Services
[Minidriver64_61_Install.NT.HW]
Include=umpass.inf
Needs=UmPass.HW
[Minidriver64_61_Install.NT.CoInstallers]
Include=umpass.inf
Needs=UmPass.CoInstallers
[Minidriver64_61_Install.NT.Interfaces]
Include=umpass.inf
Needs=UmPass.Interfaces
[Minidriver32_61_Install.NT.HW]
Include=umpass.inf
Needs=UmPass.HW
[Minidriver32_61_Install.NT.CoInstallers]
Include=umpass.inf
Needs=UmPass.CoInstallers
[Minidriver32_61_Install.NT.Interfaces]
Include=umpass.inf
Needs=UmPass.Interfaces
[Strings]
ProviderName = "FabrikamVendor"
CardDeviceName = "FabrikamVendor Minidriver for Smart Card"
Step 3 — Install
In Device Manager, right-click the smart card → Update driver → Browse my computer → select the folder containing the .inf file. If no compatible driver is found, the SCFILTER string is wrong.
Debugging: if installation fails, use
chkInf (from the Windows SDK) to validate the .inf file syntax.