How to check if USB CDC driver is installed

0

I need to install USB CDC driver (com port) to customers pc so my c++ mfc application works correctly. On windows 8 & 10 the driver is pre-installed, the problem is older verions of windows.

I have the driver from silabs, there is .cat, .inf and .exe files. After opening the installer - it just says "Silicon Laboratories. Inc. (usbser) Ports (03/26/2014 6.1.7601.17514) - Ready to use" after confirming the terms, nothing else.

I tried this but there is no usbser.sys or something like that in the list. And also this but nothing like "USB\VID_1BA4&PID_0002" (which I found in .inf file) wasn't found. I also tried to search for ClassGUID (4D36E978-E325-11CE-BFC1-08002BE10318) & class=ports in regedit. It's always found the same things, that's probably not what I'm looking for.

What should I look for? What parameter is important? Thanks.

.inf file

[Version]
Signature="$WINDOWS NT$"
Class=Ports
ClassGUID={4D36E978-E325-11CE-BFC1-08002BE10318}
Provider=%SILICONLABS%
DriverVer=03/26/2014,6.1.7601.17514
CatalogFile=SiLabs-CDC.cat

[Manufacturer]
%SILICONLABS%=DeviceList, NT, NTAMD64, NTIA64

;------------------------------------------------------------------------------

[DeviceList]
%CDCDEVICE_1BA4_0002%=DriverInstall,USB\VID_1BA4&PID_0002
%CDCDEVICE_2544_0003%=DriverInstall,USB\VID_2544&PID_0003
%CDCDEVICE_10C4_0003%=DriverInstall,USB\VID_10C4&PID_0003
%CDCDEVICE_2544_0008_02%=DriverInstall,USB\VID_2544&PID_0008&MI_02
%CDCDEVICE_10C4_0008_02%=DriverInstall,USB\VID_10C4&PID_0008&MI_02

[DeviceList.NT]
%CDCDEVICE_1BA4_0002%=DriverInstall,USB\VID_1BA4&PID_0002
%CDCDEVICE_2544_0003%=DriverInstall,USB\VID_2544&PID_0003
%CDCDEVICE_10C4_0003%=DriverInstall,USB\VID_10C4&PID_0003
%CDCDEVICE_2544_0008_02%=DriverInstall,USB\VID_2544&PID_0008&MI_02
%CDCDEVICE_10C4_0008_02%=DriverInstall,USB\VID_10C4&PID_0008&MI_02

[DeviceList.NTAMD64]
%CDCDEVICE_1BA4_0002%=DriverInstall,USB\VID_1BA4&PID_0002
%CDCDEVICE_2544_0003%=DriverInstall,USB\VID_2544&PID_0003
%CDCDEVICE_10C4_0003%=DriverInstall,USB\VID_10C4&PID_0003
%CDCDEVICE_2544_0008_02%=DriverInstall,USB\VID_2544&PID_0008&MI_02
%CDCDEVICE_10C4_0008_02%=DriverInstall,USB\VID_10C4&PID_0008&MI_02

[DeviceList.NTIA64]
%CDCDEVICE_1BA4_0002%=DriverInstall,USB\VID_1BA4&PID_0002
%CDCDEVICE_2544_0003%=DriverInstall,USB\VID_2544&PID_0003
%CDCDEVICE_10C4_0003%=DriverInstall,USB\VID_10C4&PID_0003
%CDCDEVICE_2544_0008_02%=DriverInstall,USB\VID_2544&PID_0008&MI_02
%CDCDEVICE_10C4_0008_02%=DriverInstall,USB\VID_10C4&PID_0008&MI_02

;------------------------------------------------------------------------------

[DriverInstall]
Include=mdmcpq.inf
CopyFiles=FakeModemCopyFileSection
AddReg=SerialPropPageAddReg

[DriverInstall.Services]
Include=mdmcpq.inf
AddService = usbser, 0x00000002, DriverServiceInst

[DriverServiceInst]
DisplayName=%SERVICE%
ServiceType=1
StartType=3
ErrorControl=1
ServiceBinary=%12%\usbser.sys

[SerialPropPageAddReg]
HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"

;------------------------------------------------------------------------------

[Strings]
SILICONLABS = "Silicon Laboratories, Inc."
CDCDEVICE_1BA4_0002 = "Silicon Labs CDC Serial port"
CDCDEVICE_2544_0003 = "Silicon Labs CDC Serial port"
CDCDEVICE_10C4_0003 = "Silicon Labs CDC Serial port"
CDCDEVICE_2544_0008_02 = "Silicon Labs CDC Serial port"
CDCDEVICE_10C4_0008_02 = "Silicon Labs CDC Serial port"
SERVICE   = "USB CDC Serial Port Driver"
c++
windows
winapi
driver
cdc
asked on Stack Overflow Oct 2, 2019 by (unknown user) • edited Oct 3, 2019 by Jabberwocky

1 Answer

0

The code sample you use is Enumerating All Device Drivers in the System(loaded drivers).

I test with a FTDI USB-to-UART device. With the device attached to PC (driver loaded in memory) I can list related drivers like below, otherwise I can't.

enter image description here

So trying to attach the USB CDC device and try again.

Update based on comment: "But where I can find if the driver is already signed or not, that's the question."

Right click the *.sys file of the driver and check the digital signatures tab.

enter image description here

answered on Stack Overflow Oct 3, 2019 by Rita Han • edited Oct 4, 2019 by Rita Han

User contributions licensed under CC BY-SA 3.0