PDA

Показать полную графическую версию : [решено] Как установить устройство, драйвер через .ΒΑΤ‎ в Win 7


fly380
11-06-2012, 00:41
Доброго времени суток! Подскажите как можно установить драйвер USB устройства (телефон на андроид ОС) в windows 7?
Структура:adb_driver_htc

amd64 - файлы WdfCoInstaller01007.dll, WinUSBCoInstaller.dll, WUDFUpdate_01007.dll
i386 - файлы WdfCoInstaller01007.dll, WinUSBCoInstaller.dll, WUDFUpdate_01007.dll
android_winusb.inf
androidwinusb86.cat
androidwinusba64.cat


файл android_winusb.inf был немного корявый и драйвер ставился только через диспетчер устройст с диска. Немного его выправил (на сколько ума хватило) теперь ставится через диспетчер устройств из выбраной дириктории. Но при этом жалуется на отсутствие подписи (не удалось проверить издателя этого драйвера). Весьма геморороидально ставить его через диспетчер устройств (драйвер необходим для коректной работы телефона при прошивке через adb), хочу сделать автоустановку для юзеров у которых руки совсем не отуда. Решил попробовать через бат:rundll32.exe setupapi,InstallHinfSection DefaultInstall 128 C:\adb_driver_htc\android_winusb.infне получается (команда выполняется без ошибки но драйвер в системе не появляется). Подскажите плиз как можно это осуществить и возможно ли?

Petya V4sechkin
11-06-2012, 07:07
fly380, воспользуйтесь фильтрами (http://tools.oszone.net/Vadikan/faq.html#filters) по названию темы по драйвер.

http://oszone.net/user_img/050214130343/filters.png

Результат (http://forum.oszone.net/forumdisplay.php?f=102&filter_string=драйвер&filter_by=title)

fly380
11-06-2012, 07:24
Petya V4sechkin, я умею пользоваться поиском и гугл тоже у меня есть. Но ответ не нашол иначе бы не создавал тему.
И так команда:
devcon install C:\adb_driver_htc\android_winusb.inf "USB\VID_0BB4&PID_0C97&MI_01"
не проходит говорит что devcon не является командой
rundll32.exe setupapi.dll InstallHinfSection DefaultInstall 128 C:\adb_driver_htc\android_winusb.inf
не поможет так как нет секции DefaultInstall и писать я ее не умею.
Так выглядит мой *.inf файл
[CODE]
;
; Android WinUsb driver installation.
;
[Version]
Signature = "$Windows NT$"
Class = AndroidUsbDeviceClass
ClassGuid = {3F966BD9-FA04-4ec5-991C-D326973B5128}
Provider = %ProviderName%
DriverVer = 12/06/2010,4.0.0000.00000

[ClassInstall32]
Addreg = AndroidWinUsbClassReg

[AndroidWinUsbClassReg]
HKR,,,0,%ClassName%
HKR,,Icon,,-1

[Manufacturer]
%Google Inc% = Google, NTx86, NTamd64

[Google.NTx86]
;
;HTC Legend
%SingleAdbInterface% =USB_Install, USB\VID_0BB4&PID_0C97&MI_01
%SingleBootLoaderInterface% =USB_Install, USB\VID_0BB4&PID_0FFF
%CompositeAdbInterface% =USB_Install, USB\VID_0BB4&PID_0C01
[Google.NTamd64]
;
;HTC Legend
%SingleAdbInterface% =USB_Install, USB\VID_0BB4&PID_0C97&MI_01
%SingleBootLoaderInterface% =USB_Install, USB\VID_0BB4&PID_0FFF
%CompositeAdbInterface% =USB_Install, USB\VID_0BB4&PID_0C01
[USB_Install]
Include = winusb.inf
Needs = WINUSB.NT

[USB_Install.Services]
Include = winusb.inf
AddService = WinUSB,0x00000002,WinUSB_ServiceInstall

[WinUSB_ServiceInstall]
DisplayName = %WinUSB_SvcDesc%
ServiceType = 1
StartType = 3
ErrorControl = 1
ServiceBinary = %12%\WinUSB.sys

[USB_Install.Wdf]
KmdfService = WINUSB, WinUSB_Install

[WinUSB_Install]
KmdfLibraryVersion = 1.7

[USB_Install.HW]
AddReg = Dev_AddReg

[Dev_AddReg]
HKR,,DeviceInterfaceGUIDs,0x10000,"{F72FE0D4-CBCB-407d-8814-9ED673D0DD6B}"

[USB_Install.CoInstallers]
AddReg = CoInstallers_AddReg
CopyFiles = CoInstallers_CopyFiles

[CoInstallers_AddReg]
HKR,,CoInstallers32,0x00010000,"WdfCoInstaller01007.dll,"WinUSBCoInstaller.dll"

[CoInstallers_CopyFiles]
WinUSBCoInstaller.dll
WdfCoInstaller01007.dll

[DestinationDirs]
CoInstallers_CopyFiles=11

[SourceDisksNames]
1 = %DISK_NAME%,,,\i386
2 = %DISK_NAME%,,,\amd64

[SourceDisksFiles.x86]
WinUSBCoInstaller.dll = 1
WdfCoInstaller01007.dll = 1

[SourceDisksFiles.amd64]
WinUSBCoInstaller.dll = 2
WdfCoInstaller01007.dll = 2

[Strings]
ProviderName = "Google, Inc."
SingleAdbInterface = "Android ADB Interface"
CompositeAdbInterface = "Android Composite ADB Interface"
SingleBootLoaderInterface = "Android Bootloader Interface"
WinUSB_SvcDesc = "Android USB Driver"
DISK_NAME = "Android WinUsb installation disk"
ClassName = "Android Phone"

Petya V4sechkin
11-06-2012, 07:30
fly380, чего тут искать-то?
Взять Devcon.exe версии 6.1.7600.16385 (совместимый с Windows 7) и вперед.

говорит что devcon не является командой
Скачайте (http://tools.oszone.net/V4sechkin/MS/DevCon_win7.zip)

fly380
11-06-2012, 07:53
Petya V4sechkin, стоит у меня Windows Kits и соответственно и Devcon.exe. Может его просто в другую директорию нужно? И еще без него никак нельзя сделать выше описное, просто хочу облегчить жизнь тем кто совсем не понимает как драйвер поставить если нет *.exe

fly380
11-06-2012, 08:13
Petya V4sechkin, C Devcon.exe разобрался спасибо! :) Есть нюансы, первое он как то странно ставит драйвер
http://img43.imageshack.us/img43/5467/22501032.png
и еще можна ли исбежать вывода сообщения о отсутствии подписи драйвера? И устройство работает в двух режимах
Android ADB Interface и Android Bootloader Interface для каждого свой ID USB\VID_0BB4&PID_0C97&MI_01 и USB\VID_0BB4&PID_0FFF можно это выполнить за один раз?
Если пушу две строки
devcon install C:\adb_driver_htc\android_winusb.inf "USB\VID_0BB4&PID_0C97&MI_01"
devcon install C:\adb_driver_htc\android_winusb.inf "USB\VID_0BB4&PID_0FFF"
инсталирует оба устройства, но с ними ставит еще два (криво поставленых).
http://img31.imageshack.us/img31/3239/86928063.png Плиз помогите уже доконца понять что к чему.
Да и пока не ответили, для каждой ОС нужен свой Devcon.exe (не имея в виду разрядность) win7 winXP

Petya V4sechkin
11-06-2012, 09:11
Может его просто в другую директорию нужно?
Как насчет положить рядом с батником?
По ссылке в предыдущем сообщении два Devcon.exe (для 32-битных и 64-битных ОС). Чтобы выбрать автоматически:
[решено] Автоматическое определение типа ОС - 32 или 64 бит (http://forum.oszone.net/thread-142096.html)
[решено] Как проверить разрядность операционной системы? (http://forum.oszone.net/thread-172610.html)


он как то странно ставит драйвер
Что выдает при выполнении?

устройство работает в двух режимах
можно это выполнить за один раз?
Для установки драйвера устройство должно быть в соответствующем режиме (чтобы его Hwid был в системе).

Раньше у меня с установкой драйвера проблем не было
А сейчас у вас какая-то проблема?

fly380
11-06-2012, 09:38
Что выдает при выполнении? »
Да нет он устанавливается, вродибы даже без ошибок, но создает непонятный дубликат.
http://img43.imageshack.us/img43/5467/22501032.png
Для установки драйвера устройство должно быть в соответствующем режиме (чтобы его Hwid был в системе). »
Хм если пишу сразу две строки он ставит драйвер для обоих режимов не зависимо в каком включен (да и без подключенного устройства ставит), но опять же делает дубликаты.
http://img31.imageshack.us/img31/3239/86928063.png
Не пойму как применть это условие
If "%PROCESSOR_ARCHITECTURE%"=="x86" (
Start /Wait ...x86.exe
) Else (
Start /Wait ...x64.exe
)
Относительно строки
devcon install C:\adb_driver_htc\android_winusb.inf "USB\VID_0BB4&PID_0C97&MI_01" чет не пойму.

Petya V4sechkin
11-06-2012, 10:02
Да нет он устанавливается
Что в командной строке выдает?
Добавьте в конец батника Pause и смотрите.

пишу сразу две строки
Не надо.

fly380
11-06-2012, 10:11
Что в командной строке выдает? »
Drivers installed successfully.
При этом если запустить созданый *.bat с командой
devcon install android_winusb.inf "USB\VID_0BB4&PID_0C97&MI_01" и на вопрос системы о установке не подписаного драйвера отменить установку то создается неизвестное устройство. Если установку продолжить то первым создается непонятный двойник а после ставится драйвер на само устройство.
1. помогите решить вопрос с дубликатами (ставит дубликаты для обоих режимов).
2. объясните как правильно написать правило проверки разрядности ОС для команды
devcon install android_winusb.inf "USB\VID_0BB4&PID_0C97&MI_01"
используя для разных версий devcon.ехе папки х86 и х64?

Petya V4sechkin
11-06-2012, 18:11
помогите решить вопрос с дубликатами (ставит дубликаты для обоих режимов)
Может быть, ставит из обеих секций? Google.NTx86 и Google.NTamd64.

fly380
11-06-2012, 18:41
Petya V4sechkin, да нет я уже пробовал удалять секцию оставляя одну и пробовал удалять из секции
%SingleBootLoaderInterface% =USB_Install, USB\VID_0BB4&PID_0FFFоставляя только %SingleAdbInterface% =USB_Install, USB\VID_0BB4&PID_0C97&MI_01 все равно делает дулбли. Как только батник запускаю сразу появляется дубль(((

fly380
12-06-2012, 17:19
Люди кто знает почему создаются двойники драйвера при выполнении команды
devcon install android_winusb.inf "USB\VID_0BB4&PID_0C97&MI_01"
на всех ОС win7x86, win7x64, winXPx86

fly380
13-06-2012, 03:12
Решил проблему следующим орразом:
Создаваемый двойник остается в списке устройств даже если само устройство отключено. Для его удаления я использовал команду
devcon remove "USB\VID_0BB4&PID_0C97&MI_01" она удаляет устройство из диспетчера устройств но не удаляет драйвер из системы. Соответственно при бональном отключении и повторном включении устройства драйвер успешно поднимается, но при этом нам глаза не мозолит его двойник.

Cr00t
11-03-2020, 13:26
Подскажите, как установить драйвера для устройст PCI\VEN..., которые всегда одни и те же для одинаковых конфигураций техники через командную строку, если вся куча драйверов лежит E:\Drivers в подпапках, чтобы для каждого устанавливаемого драйвера установщик драйвера бегал по подпапкам и искал драйвер? в pnputil не нашел ответа

DJ Mogarych
11-03-2020, 13:56
pnputil.exe /add-driver E:\Drivers\*.inf /subdirs /install /reboot
https://flamingkeys.com/install-windows-drivers-from-folder-using-powershell/

Cr00t
11-03-2020, 15:00
DJ Mogarych, а можно как-то указать конкретное устройство по его коду в диспетчере устройств, для которого надо найти драйвер?

DJ Mogarych
11-03-2020, 16:41
Обычно для разливки одинаковых конфигураций техники используется WDS (Windows Deployment Services), туда загружаются драйверы, и компьютер устанавливает какие ему нужно во время установки системы.

К тому же, насколько я понимаю, Windows при перезагрузке после добавления драйверов через pnputil сама установит устройства, т. к. драйверы у неё уже будут.

Cr00t
12-03-2020, 10:06
DJ Mogarych, Мне просто интересен был сам процесс конкретной установки драйвера через cmd, если это вообще возможно. В моём случае есть 5-6 стандартных конфигураций, но так вышло, что windows 10 со всем-всем что требуется легче с usb3.0 флешки разворачивать, чем из образа, т.к. это быстрее получается и к сети не привязан.




© OSzone.net 2001-2012