Devcon exe что это

Утилита командной строки DevCon.exe ( Device Console ) входит в состав средств для разработки драйверов ( DDK ) и поставляется с исходным кодом и документацией на английском языке. С ее помощью можно включать, выключать, перезапускать, обновлять, удалять и опрашивать отдельные устройства или группы устройств. Программа DevCon также предоставляет необходимые разработчику драйвера сведения, которые недоступны с помощью диспетчера устройств. Утилита DevCon может использоваться во всех версиях Windows старше Win2k, включая 32-х и 64-битные

Формат командной строки DevCon:

devcon.exe [-r] [-m:\machine] command [. ]

Параметры командной строки:

-r — если задано, то после выполнения команды выполняется перезагрузка системы.

machine — имя или IP-адрес удаленного компьютера.

command — команда, выполняемая DevCon.

arg — аргументы выполняемой команды.

Для получения справки по использованию команды используется парамет help :

devcon.exe help — отобразить краткую справку по использованию DevCon

devcon.exe help install — отобразить справку по использованию команды install

Параметры командной строки:

classfilter — Разрешить изменение фильтров классов.

classes — Отобразить все классы настройки устройств.

disable — Отключить устройства, которые соответствуют определенному идентификатору оборудования или экземпляра.

driverfiles — Отобразить установленные файлы драйверов.

drivernodes — Отобразить все узлы драйверов устройств.

enable — Включить устройства, которые соответствуют определенному идентификатору оборудования или экземпляра.

find — Найти устройства, которые соответствуют определенному идентификатору оборудования или экземпляра.

findall — Найти устройства, включая отсоединенные.

help — Отображение справочной информации.

hwids — Отобразить идентификаторы оборудования.

install — Установить устройство в ручном режиме.

listclass — Отобразить все устройства для класса настройки.

reboot — Перезагрузить локальный компьютер.

remove — Удалить устройства, которые соответствуют определенному идентификатору оборудования или экземпляра.

rescan — Выполнить поиск нового оборудования.

resources — Отобразить ресурсы устройств.

restart — Перезагрузить устройства, которые соответствуют определенному идентификатору оборудования или экземпляра.

stack — Отобразить ожидаемый стек драйверов устройств.

status — Отобразить рабочее состояние устройств.

update — Обновить устройство в ручном режиме.

UpdateNI — Обновить устройство в ручном режиме без уведомления пользователя.

SetHwID — Добавить, удалить или изменить порядок идентификаторов оборудования для устройств с корневым перечислением.

Для использования утилиты DevCon.exe требуются административные привилегии ( "Запуск от имени Администратора" в среде Windows Vista / Windows 7 — 10 )

Примеры использования утилиты DevCon:

devcon -m:\SERVER find pci* — отобразить список всех PCI-устройств на удаленном компьютере с именем SERVER . Режим работы с удаленным подключением к другому компьютеру реализован только для ОС Windows XP / Windows Server 2003.

devcon -m:\192.168.0.1 find pci* > C:serverpci.txt — вывод списка всех PCI-устройств компьютера с IP-адресом 192.168.0.1 в текстовый файл C:serverpci.txt

devcon find usb* — отобразить список устройств USB на локальном компьютере.

devcon find usbstor* — отобразить только флэшки и съемные диски, подключенные к USB (устройства класса usbstor ). Список классов устройств можно получить по команде devcon classes

devcon find =Display — отобразить список устройств класса Dislpay .

devcon find *pnp07* — отобразить список устройств, идентификатор оборудования которых содержит строку pnp07

devcon find *VEN_8086* — отобразить список устройств, производителем которых является Intel ( идентификатор производителя оборудования содержит строку VEN_8086 )

Пример отображаемой информации:

PCIVEN_1002&DEV_5964&SUBSYS_ 7C26174B&REV_01 4&38B71F77&0&0008: RADEON 9200 SE Family (Microsoft )

PCIVEN_1002&DEV_5D44&SUBSYS_ 7C27174B&REV_01 4&38B71F77&0&0108: RADEON 9200 SE SEC Family (Microsoft )

PCIVEN_10EC&DEV_8139&SUBSYS_ 813910EC&REV_10 4&2E98101C&0&48F0: Realtek RTL8139 Family PCI Fast Ethernet NIC

PCIVEN_11AB&DEV_4320&SUBSYS_ 811A1043&REV_13 4&2E98101C&0&28F0: Marvell Yukon 88E8001/8003/8010

PCI Gigabit Ethernet Controller

PCIVEN_11AB&DEV_5041&SUBSYS_ AD0E779F&REV_01 4&5D18F2DF&0 : AT7B35J8 IDE Controller

PCIVEN_8086&DEV_244E&SUBSYS_ 00000000&REV_C2 3&267A616A&0&F0: Intel(R) 82801 PCI — 244E

PCIVEN_8086&DEV_24D0&SUBSYS_ 00000000&REV_02 3&267A616A&0&F8: Intel(R) 82801EB LPC- — 24D0

PCIVEN_8086&DEV_24D1&SUBSYS_ 80A61043&REV_02 3&267A616A&0&FA: Intel(R) 82801EB Ultra ATA Storage — 24D1

PCIVEN_8086&DEV_24D2&SUBSYS_ 80A61043&REV_02 3&267A616A&0&E8: Intel(R) 82801EB USB — — 24D2

PCIVEN_8086&DEV_24D3&SUBSYS_ 80A61043&REV_02 3&267A616A&0&FB: Intel(R) 82801EB SMBus — 24D3

PCIVEN_8086&DEV_24D4&SUBSYS_ 80A61043&REV_02 3&267A616A&0&E9: Intel(R) 82801EB USB — — 24D4

PCIVEN_8086&DEV_24D5&SUBSYS_ 80F31043&REV_02 3&267A616A&0&FD: SoundMAX Integrated Digital Audio

Читайте также:  Lenovo ideapad 330 не работает клавиатура

PCIVEN_8086&DEV_24D7&SUBSYS_ 80A61043&REV_02 3&267A616A&0&EA: Intel(R) 82801EB USB — — 24D7

PCIVEN_8086&DEV_24DB&SUBSYS_ 80A61043&REV_02 3&267A616A&0&F9: Intel(R) 82801EB Ultra ATA Storage — 24DB

PCIVEN_8086&DEV_24DD&SUBSYS_ 80A61043&REV_02 3&267A616A&0&EF: Intel(R) 82801EB USB2 — — 24DD

PCIVEN_8086&DEV_24DE&SUBSYS_ 80A61043&REV_02 3&267A616A&0&EB: Intel(R) 82801EB USB — — 24DE

PCIVEN_8086&DEV_2570&SUBSYS_ 00000000&REV_02 3&267A616A&0&00: Intel(R) 82865G/PE/P/GV/82848P CPU — I/O — 2570

PCIVEN_8086&DEV_2571&SUBSYS_ 00000000&REV_02 3&267A616A&0&08: Intel(R) 82865G/PE/P/GV/82848P CPU — AGP — 2571

18 matching device(s) found on \SERVER

Для отображения списка устройств, в том числе отсутствующих или отключенных, используется подкоманда findall

devcon -m:\comp findall *VEN_10ec* — отобразить список устройств производителя Realtek ( VEN_10EC ), включая отсутствующие, на удаленном компьютере comp . (только на Windows XP / Windows Server 2003).

devcon.exe resources * — отобразить список всех устройств и всех используемых ими ресурсов системы.

Пример отображаемой информации:

Name: Device is not using any resources.

Name: Intel(R) Pentium(R) 4 CPU 2.40GHz

Device is not using any resources.

Name: Device has the following resources reserved:

Name: Device has the following resources reserved:

Name: Device has the following resources reserved:

Name: Device is currently using the following resources:

Name: Device is currently using the following resources:

Name: Device is currently using the following resources:

Name: Device is currently using the following resources:

По каждому устройству выдается его имя и список используемых ресурсов:

IO : 03f0-03f5 — диапазон портов ввода-вывода ( 3f0-3f5 ).
DMA: 2 — номер канала прямого доступа к памяти ( например, канал 2 )
IRQ: 6 — номер прерывания, используемого устройством ( например 6 ).
MEM : fed20000-fed8ffff — диапазон адресов используемой оперативной памяти

devcon resources =ports — отобразить ресурсы, используемые устройствами класса ports . К данному классу относятся контроллеры параллельных и последовательных портов ввода-вывода (порты LPT и COM )

devcon driverfiles =net — отобразить список используемых драйверов сетевых устройств ( устройств класса net ). Отображается имя устройства, источник установленного драйвера, пути и мена файлов:

PCIVEN_10EC&DEV_8139&SUBSYS _813910EC&REV_10 4&2E98101C&0&48F0

Name: Realtek RTL8139 Family PCI Fast Ethernet NIC

Driver installed from c:windowsinf
etrtsnt.inf [RTL8139.ndi]. 1 file(s) used by driver:

PCIVEN_11AB&DEV_4320&SUBSYS _811A1043&REV_13 4&2E98101C&0&28F0

Name: Marvell Yukon 88E8001/8003/8010 PCI Gigabit Ethernet Controller

Driver installed from c:windowsinfoem6.inf [SLYukCopGigFAN.ndi]. 1 file(s) used by driver:

Name: Driver installed from c:windowsinf
etrasa.inf [Ndi-Mp-L2tp]. No files used by driver

devcon stack =net > stack-net — записать в текстовый файл stack-net стек драйверов класса Net . Стек включает в себя драйвер устройства, нижний и верхний фильтр, системную службу, обслуживающую устройство.

PCIVEN_10EC&DEV_8139&SUBSYS _813910EC&REV_10 4&2E98101C&0&48F0

Name: Realtek RTL8139 Family PCI Fast Ethernet NIC

PCIVEN_10EC&DEV_8139&SUBSYS _813910EC&REV_10 4&2E98101C&0&48F0 — код экземпляра устройства.
Name — название
Setup Class — класс установки.
Controlling service — управляющий сервис.

Для определения текущего состояния устройства используется подкоманда status :

devcon status ROOTRDP* — отобразить состояние драйверов, идентификаторы которых начинаются строкой ROOTRDP , т. е. используемых службой терминалов.

Установка нового устройства возможна только на локальном компьютере и требуется обязательное наличие INF-файла :

devcon -r install %WINDIR%InfNetloop.inf *MSLOOP — установить новый экземпляр петлевого адаптера. Ключ -r требует перезагрузку после установки драйвера.

Для изменения фильтров драйверов используются команды:

devcon classfilter upper !filter1 !filter2 — удалить два заданных верхних фильтра. Признаком действия на удаление является символ ! перед именем фильтра.

devcon classfilter lower !badfilter +goodfilter — заменить нижний фильтр "badfilter" на "goodfilter".

Изменения для фильтров вступают в силу либо при перезапуске основного драйвера, либо при перезагрузке компьютера. Подробную справку по управлению фильтрами можно получить по команде devcon help classfilter

Утилита DevCon позволяет останавливать, запускать или перезапускать отдельно выбранные устройства или группы устройств.

devcon disable =mouse — отключить драйвер устройства класса mouse , т.е отключить мышь.

devcon enable =mouse — включить драйвер устройства класса mouse

devcon restart =mouse — перезапустить драйвер устройства класса mouse

В практике сетевого администрирования, команду DevCon нередко используют для перезапуска сетевых адаптеров. Например, для сетевого адаптера Realtek RTL8139, с идентификатором PCIVEN_10EC&DEV_8139 . . . можно воспользоваться командой:

Читайте также:  Jit отладчик visual studio необработанное исключение

devcon restart "PCIVEN_10EC&DEV_8139*"

Обратите внимание — двойные кавычки в начальной части идентификатора сетевого адаптера обязательны. В противном случае, символ & будет обработан интерпретатором CMD Windows как стандартный символ объединения команд — команды devcon restart "PCIVEN_10EC и команды DEV_8139* . Первая выполнит рестарт для всех существующих в системе адаптеров производителя Realtek, а вторая вызовет сообщение о том, что DEV_8139* не является внутренней или внешней командой, исполняемой программой или пакетным файлом.

Очень часто утилита DevCon используется для блокировки сетевой активности системы (временного отключения всех сетевых устройств):

devcon disable =net

Также, утилита может использоваться для перезапуска зависших модемов и беспроводных USB-адаптеров с использованием планировщика и сценария, проверяющего доступность какого-либо узла в интернет и выполняющего команду devcon restart в случае его недоступности.

Команда DevCon возвращает следующие коды ErrorLevel:

0 — команда выполнена успешно;
1 — требуется перезагрузить компьютер;
2 — команда не выполнена;
3 — синтаксическая ошибка.

Как уже упоминалось выше, утилита devcon не является стандартным компонентом системы, и не устанавливается вместе с Windows, однако, ее можно скачать в составе некоторых служебных пакетов от Microsoft ( Windows Driver Kit, Visual Studio, Windows SDK for desktop apps). Утилиту можно извлечь из перечисленных пакетов и для удобства использования, добавить в каталог, присутствующий в путях поиска исполняемых файлов, задаваемых переменной PATH , например Windowssystem32.

Обратите внимание на то, что 64-разрядная версия утилиты devcon64 не работает в 64-разрядных Windows 10 (Windows 8, 8.1, Windows 7). Она разрабатывалась только для 64-разрядной Windows XP. Если у Вас другая ОС Windows – пользуйтесь либо 32-разрядной версей DevСon.exe , которая прекрасно работает во всех версиях Windows старше Windows 2000, включая и 64-разрядные, либо 64-разрядной версией из пакета EWDK для Windows 10. Последняя не проверялась в среде 64-разрядной ОС Windows XP.

Страница с описанием на английском языке и ссылкой для скачивания DevCon в составе пакетов для разработчиков драйверов на сайте Microsoft. — На данной странице нет прямой ссылки для скачивания DevCon, но, например, имеется ссылка на страницу с актуальной версией Enterprise Windows Driver Kit (EWDK), а также инструкции по его загрузке и установке. Все пакеты, в состав которых включена утилита DevCon, имеют внушительный объем – придется скачивать несколько гигабайт данных. После установки выбранного пакета потребуется определить место расположения файлов DevCon , и при необходимости, добавить путь исполняемых файлов в системную переменную PATH или скопировать их в уже существующий каталог для поиска.

В конце данной страницы имеется ссылка для скачивания готового архива с уже извлеченными из EWDK для Windows 10 32-х и 64-разрядными версиями DevCon

Работа с устройствами из командной строки DevCon.exe x64

Для начала скажу, что DevCon для 64 разрядных систем (например для Windows Server 2008R2) не очень просто найти. Для этого надо скачать комплект для разработчика на много мегабайт, и там уже его обнаружить. Так что выкладываю отдельно в аттаче. Прога позволяет на 99% обойтись без диспетчера устройств и графического интерфейса.

Интерфейс довольно прост. Например команда для перезагрузки USB Хаба выглядит примерно так:
devconx64.exe restart *root_hub*

Или конкретную инстанцию устройства:
devconx64 restart “@USBROOT_HUB204&11717588&0”

Отключение устройства с заданным ID:
devconx64 disable “PCIVEN_1969&DEV_1083&SUBSYS_E0001458&REV_C0”

Включение устройства с заданным ID:
devconx64 enable “PCIVEN_1969&DEV_1083&SUBSYS_E0001458&REV_C0”

Что бы узнать ID заходим в Диспетчер устройств, открываете свойства нужного Вам устройства, переходите во вкладку Сведения, в выпадающем списке выбираете ИД оборудования и копируете первую строку.

Чтобы найти все USB устройства в системе:
devconx64 find *usb*

BoostOrDie

Свой человек

Почитав данный форум я понял одно, что мало кто знаком с отличной утилитой DevCon64

Данная утилита позволяет ПО НАСТОЯЩЕМУ произвести перезапуск драйвера оборудования. Это не фигня с отключить и включить оборудование, это другое.

Для работы утилиты нужно знать ID того, оборудования, которые нужно перезагрузить.
Найти его можно в Диспетчер устройств, выбираем наше устройство -> Свойства -> вкладка Сведения -> ниже копирум ИД оборудования, например "PCIVEN_10EC&DEV_8168&CC_0200"
ВАЖНО! Нужно все знаки " & " заменить на " * "

Читайте также:  Строка и строчка в чем разница

У меня галимый wifi адаптер TP-LINK WL722N v1 он очень часто виснет или отваливается. я долго ломал голову как мне защититься от его косяков и набрел на утилиту devcon64.

Скачать утилиту можно ТУТ (Там инструкции к утилите и внизу страницы ссылки на скачивание утилиты.)

Вообщем что нужно сделать, чтобы перезагрузить драйвер WiFi модуля?
1) Создаем папку и кладем в нее devcon64.exe (у меня он лежит в папке со всеми моими скриптами)
2) Создаем .bat файл (назовем его wifi_fail.bat) следующего содержания:
PS исполняемые файлы метод пауз и задержек вы можете свои вписать, у меня так.

Все, теперь наш несчастный wifi адаптер перезагружен полностью и он уже ищет свою сеть и подключается к ней (в управление сетями нужно поставить две галочки: Подключаться автоматически и подключаться даже если не ведет вещания. Но вы это должны и сами знать)

3) Но вы скажите "это его будет каждый раз ребутать в итоге будут просадки хешрейта и тд. Как сделать так, чтобы дрова ребутались только если сети нет?"
Для этого мы пишем еще 1 батник, а-ля вачдог или PingДог, называйте как хотите:

Данный батник будет запускать друго батник только елси команда ping не удастся.

4) Для дергания батников я использую xStarter, о нем я расскажу позже. Для тех, кто не приемлет лишнего софта вот вариант автобатника PingDog’а:

Замените значение 900 ( в секундах) на то, как часто вы хотите чтобы он проверял наличие сети.

Вторая, хотя наверное даже самая первая проблема майнинг ферм — отвал видео драйверов (видео карт). Вам повезет если карта сама сможет подняться, но часто происходит так, что она пропадает из майнера вообще, а вы об этом не знаете, или вам долго добираться до фермы чтобы поднять ее.

1) Для работы данного батника нужно предварительно в диспетчере устройств найти ID оборудования видео карты (описывал выше в начале).

Если у вас все карты на ферме одинаковые, то скорей всего у них будет одинаковый ID. так что можно взять его с любой, например у меня PCIVEN_10DE&DEV_1C03&CC_0300
Если у вас разные карты стоят — то нужно взять каждый различный ID
Не забываем заменять знаки "&" на звездочки.

Если все карты одинаковые, то достаточно 1 строки с ID карты — будут перезагржены все карты с таким ID.
Если карты разные, то нужно вставить строку с командой для каждого ID.

2) Создаем .bat файл:

А значит будет перезапускать только когда драйвер фактически отвалился.

3) Настраиваем xStarter.
— Создаем новую задачу
— Даем ей название
— В "запустить задачу" выбираем "по событию"
— В "Событие" выбираем "NT event"
— В "Источник" выбираем "Hardware event" (вроде так, я по памяти пишу могу ошибится тут, поправлю попозже)
— В "Тип сообщения" ставим галочку "Все сообщения"
— "Событие содержит" — пишем текст , которые содержится в ошибке драйвер, например "Видеодрайвер".
— Переходим в вкладку Actions
— В "имя файла" указываем путь до нашего батника для перезапуска драйвера"
— сверху где два зеленые стрелочки етсь кнопка с двумя красными галочками, ее надо нажать
— Жмем применить
— Готово.

Программа должна висеть в фоне. Она потребялет мало ресурсов, а делает много плезного. Она также может запускать сетевой вачдог по времени.
А главное на рабочем столе не будет лишних командных окон.

Надеюсь это будет кому то полезным. Извините за какие то неточности, я не так давно в майнинге, но решил что это будет полезным вам.

PS все комментарии из кода нужно удалить чтобы батник работал!

Оцените статью
Добавить комментарий

Adblock
detector