我需要为客户PC安装USB CDC驱动程序(com端口),以便我的c ++ mfc应用程序可以正常工作。在Windows 8和10上已预安装了驱动程序,问题是Windows的版本较旧。
我有来自Silabs的驱动程序,有.cat,.inf和.exe文件。打开安装程序后-确认条款后,仅显示“ Silicon Laboratories。Inc.(usbser)端口(03/26/2014 6.1.7601.17514)-准备使用” 。 >
我尝试了this,但是列表中没有usbser.sys或类似的东西。也没有找到this,但找不到类似“ USB \ VID_1BA4&PID_0002”(我在.inf文件中找到)的东西。我还尝试在regedit中搜索ClassGUID( 4D36E978-E325-11CE-BFC1-08002BE10318 )和class = ports。总是发现相同的东西,这可能不是我想要的。
我应该找什么?哪个参数重要?谢谢。
.inf文件
[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"
答案 0 :(得分:0)
您使用的代码示例为Enumerating All Device Drivers in the System(已加载驱动程序)。
我使用FTDI USB-to-UART设备进行测试。将设备连接到PC后(驱动程序已加载到内存中),我可以像下面列出相关的驱动程序,否则无法列出。
因此,尝试连接USB CDC设备,然后重试。
基于评论的更新:“但是在哪里可以找到驱动程序是否已经签名,这就是问题所在。”
右键单击驱动程序的* .sys文件,然后检查“数字签名”选项卡。