Цитата Lisabon:
Проверка, проверкой, но программа очень грубо определяет ven_dev, я так понял что очень много отсекается, хотелось чтоб поиск происходил более точно, просто у меня получается несколько драйверов на одно устройство подходят, хотя реале только один является корректным (родным) »
|
Не грубо, а наиболее безопасно! в таком случае она всегда найдет драйвера, пусть из них некоторые и не подходят. А если сделать точно, то может наоборот нужный драйвер и не заметить.
так как в реале происходит следующее:
HWID которые хранятся в inf файлах чаще бывают не полные.
Devcon возвращает например драйвер PCI\VEN_168C&DEV_001C&SUBSYS_10261A3B&REV_01\4&3B226981&0&0030,
а в inf файле хранится PCI\VEN_168C&DEV_001C&SUBSYS_10261A3B
а бывает и нет такого HWID в inf-файле вообще, однако драйвер успешно ставится.
так как для устройства
PCI\VEN_168C&DEV_001C&SUBSYS_10261A3B&REV_01\4&3B226981&0&0030
совместимыми считаются
PCI\VEN_168C&DEV_001C&SUBSYS_10261A3B&REV_01\4&3B226981&0&0030
PCI\VEN_168C&DEV_001C&SUBSYS_10261A3B&REV_01
PCI\VEN_168C&DEV_001C&SUBSYS_10261A3B
PCI\VEN_168C&DEV_001C
PCI\VEN_168C
а бывает еще и другие HWID вообще не похожие на этот.
PCI\VEN_168C&СС_0200
PCI\VEN_168C&СС_020000
PCI\СС_0200000
PCI\СС_0200
в диспетчере устройств это видно (совместимые HWID).
для Massstorage и звука еще сложнее.
И как мне быть? Поэтому в свое время было принято решение вот такой обработки.
Если найдете оптимальное решение, то попробую реализовать. Есть тут спецы по дровам?