Как проверить, установлен ли драйвер USB CDC - PullRequest
0 голосов
/ 03 октября 2019

Мне нужно установить драйвер USB CDC (com-порт) на ПК клиента, чтобы мое приложение c ++ mfc работало правильно. На Windows 8 и 10 драйвер предварительно установлен, проблема в старых версиях Windows.

У меня есть драйвер от silabs, есть файлы .cat, .inf и .exe. После открытия установщика - он просто говорит "Silicon Laboratories. Inc. (usbser) Ports (26.03.2014 6.1.7601.17514) - Готов к использованию" после подтверждения условий, больше ничего.

Я пытался this , но в списке нет usbser.sys или чего-то подобного. А также этот , но ничего подобного "USB \ VID_1BA4 & PID_0002" (который я нашел в INF-файле) не было найдено. Я также пытался найти ClassGUID ( 4D36E978-E325-11CE-BFC1-08002BE10318 ) & class = порты в regedit. Там всегда находят одно и то же, наверное, это не то, что я ищу.

Что мне искать? Какой параметр важен? Спасибо.

.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"

1 Ответ

0 голосов
/ 03 октября 2019

Пример кода, который вы используете: Перечисление всех драйверов устройств в системе (загруженные драйверы).

Я тестирую с устройством FTDI USB-to-UART. С устройством, подключенным к ПК (драйвер загружен в память), я могу перечислить соответствующие драйверы, как показано ниже, в противном случае я не могу.

enter image description here

Итак, пытаясьподключите устройство USB CDC и попробуйте снова.

Обновление на основе комментария: «Но где я могу найти, если драйвер уже подписан или нет, вот в чем вопрос».

Щелкните правой кнопкой мыши файл * .sys драйвера и откройте вкладку цифровых подписей.

enter image description here

...