Меню
безкоштовно
Головна  /  проблеми / Диспетчер пристроїв DevCon з командного рядка. DevCon - диспетчер пристроїв в командному рядку Windows Sde не є внутрішньою або зовнішньою командою

Диспетчер пристроїв DevCon з командного рядка. DevCon - диспетчер пристроїв в командному рядку Windows Sde не є внутрішньою або зовнішньою командою

При спробі відкрити будь-яку команду через вікно службової програми або консоль, ви стикаєтеся з помилкою - «Файл» не є внутрішньою або зовнішньою командою, що виконується програмою або пакетним файлом. Система вперто не відчиняє файл з якихось причин і цей факт дуже дратує. Причиною цього може бути один з декількох варіантів: неправильно вказано шлях до файлу і відсутність компонента в системі взагалі, тобто за вказаною адресою його не існує.

Основні причини, за якими з'являється помилка «не є внутрішньою або зовнішньою командою»

Як вже було сказано, одна з причин полягає в неправильному зазначенні шляху до що відкривається файлу. Зазвичай шлях до файлу прописаний в змінної «Path» в системі, повинен бути зазначений строгий шлях до директорії, в якому розміщені потрібні файли. Якщо є якісь помилки в настройках при вказівці шляху в змінної, або при вказівці імені файлу, то система буде видавати саме таку помилку - «ім'я файлу» не є внутрішньою або зовнішньою командою, що виконується програмою.

Насамперед необхідно вказати точний шлях змінної «Path» операційній системі, щоб не виникало помилок при відкритті файлу. Для цього потрібно напевно знати розташування папки. Наприклад, звернемося до програми, яка в подальшому буде працювати з виконуваним файлом в певній папці.

Мінлива «Path» - це змінна операційної системи, яка служить для того, щоб знайти зазначені виконувані об'єкти через командний рядок або термінал. Знайти її можна в панелі управління Windows. У нових версіях Віндовс і інших ОС вказівку вручну звичайно не потрібно.

Вказуємо правильний шлях у змінній path на ОС Windows 7

Щоб правильно вказати шлях необхідно знати точне розташування файлу. Якщо файл програми, який потрібно відкрити лежить на диску в С: \\ Program Files \\ Java \\ jdk 1.8.0.45 \\ bin, тоді цей шлях потрібно скопіювати і вказати в системній змінній для подальшого відкриття.


У тому випадку, якщо помилка буде з'являтися знову, спробуйте перенести програму в робочі директорії диска зі встановленою операційною системою, наприклад / System32. З цієї Директорією Віндовс працює частіше.

Також помилки виникають через відсутність компонентів програми. Усунути їх можна доповнивши потрібними. Для прикладу візьмемо компонент «Telnet». Щоб його включити, перейдіть:


Задати змінну «Path» в ОС Windows 8 / 8.1 / 10

  1. Заходимо на «Панель управління».
  2. Кількома посилання « Додаткові параметри системи ».
  3. знаходимо « змінні середовища». У цьому розділі потрібно вибрати «Path». Далі «Змінити», якщо немає готової - створити заново.
  4. У пункті «Зміна системної змінної» вкажіть потрібне вам значення і підтвердіть кнопкою «Ок». Закриваємо і всі інші вікна, клікаючи «Ок».
  5. Відкрийте заново командний рядок або термінал і спробуйте знову ввести ваш запит. Зараз має всі працювати справно.

Утиліта командного рядка 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 *\u003e 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 \u003d Display - відобразити список пристроїв класу Dislpay.

devcon find * pnp07 * - відобразити список пристроїв, ідентифікатор обладнання яких містить рядок pnp07

devcon find * VEN_8086 * - відобразити список пристроїв, виробником яких є Intel (Ідентифікатор виробника устаткування містить рядок VEN_8086)

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

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

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

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

PCI Gigabit Ethernet Controller

PCI \\ VEN_11AB & DEV_5041 & SUBSYS_ AD0E779F & REV_01 \\ 4 & 5D18F2DF & 0: AT7B35J8 IDE Controller

PCI \\ VEN_8086 & DEV_244E & SUBSYS_ 00000000 & REV_C2 \\ 3 & 267A616A & 0 & F0: Intel (R) 82801 PCI - 244E

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

PCI \\ VEN_8086 & DEV_24D1 & SUBSYS_ 80A61043 & REV_02 \\ 3 & 267A616A & 0 & FA: Intel (R) 82801EB Ultra ATA Storage - 24D1

PCI \\ VEN_8086 & DEV_24D2 & SUBSYS_ 80A61043 & REV_02 \\ 3 & 267A616A & 0 & E8: Intel (R) 82801EB USB - - 24D2

PCI \\ VEN_8086 & DEV_24D3 & SUBSYS_ 80A61043 & REV_02 \\ 3 & 267A616A & 0 & FB: Intel (R) 82801EB SMBus - 24D3

PCI \\ VEN_8086 & DEV_24D4 & SUBSYS_ 80A61043 & REV_02 \\ 3 & 267A616A & 0 & E9: Intel (R) 82801EB USB - - 24D4

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

PCI \\ VEN_8086 & DEV_24D7 & SUBSYS_ 80A61043 & REV_02 \\ 3 & 267A616A & 0 & EA: Intel (R) 82801EB USB - - 24D7

PCI \\ VEN_8086 & DEV_24DB & SUBSYS_ 80A61043 & REV_02 \\ 3 & 267A616A & 0 & F9: Intel (R) 82801EB Ultra ATA Storage - 24DB

PCI \\ VEN_8086 & DEV_24DD & SUBSYS_ 80A61043 & REV_02 \\ 3 & 267A616A & 0 & EF: Intel (R) 82801EB USB2 - - 24DD

PCI \\ VEN_8086 & DEV_24DE & SUBSYS_ 80A61043 & REV_02 \\ 3 & 267A616A & 0 & EB: Intel (R) 82801EB USB - - 24DE

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

PCI \\ VEN_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 * - відобразити список всіх пристроїв і всіх використовуваних ними ресурсів системи.

Приклад відображається:

ACPI \\ FIXEDBUTTON \\ 2 & DABA3FF & 0

Name: Device is not using any resources.

ACPI \\ GENUINEINTEL _-_ X86_FAMILY_15_MODEL_4 \\ _0

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

Device is not using any resources.

ACPI \\ PNP0000 \\ 4 & 35F762C4 & 0

ACPI \\ PNP0100 \\ 4 & 35F762C4 & 0

Name: Device has the following resources reserved:

ACPI \\ PNP0200 \\ 4 & 35F762C4 & 0

Name: Device has the following resources reserved:

ACPI \\ PNP0303 \\ 4 & 35F762C4 & 0

Name: Device is currently using the following resources:

Name: Device is currently using the following resources:

ACPI \\ PNP0700 \\ 4 & 35F762C4 & 0

Name: Device is currently using the following resources:

По кожному пристрою видається його ім'я і список використовуваних ресурсів:

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

devcon resources \u003d ports - відобразити ресурси, використовувані пристроями класу ports. До даного класу відносяться контролери паралельних і послідовних портів введення-виведення (порти LPT і COM)

devcon driverfiles \u003d net - відобразити список використовуваних драйверів мережевих пристроїв (Пристроїв класу net). Відображення назви пристрою, джерело встановленого драйвера, Шляхи і міна файлів:

Driver installed from c: \\ windows \\ inf \\ netrtsnt.inf. 1 file (s) used by driver:

C: \\ WINDOWS \\ system32 \\ DRIVERS \\ RTL8139.sys

PCI \\ VEN_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: \\ windows \\ inf \\ oem6.inf. 1 file (s) used by driver:

C: \\ WINDOWS \\ system32 \\ DRIVERS \\ yk51x86.sys

ROOT \\ MS_L2TPMINIPORT \\ 0000

Name: Driver installed from c: \\ windows \\ inf \\ netrasa.inf. No files used by driver

devcon stack \u003d net\u003e stack-net - записати в текстовий файл stack-net стек драйверів класу Net. Стек включає в себе драйвер пристрою, нижній і верхній фільтр, системну службу, Яка обслуговує пристрій.

PCI \\ VEN_10EC & DEV_8139 & SUBSYS _813910EC & REV_10 \\ 4 & 2E98101C & 0 & 48F0

Name: Realtek RTL8139 Family PCI Fast Ethernet NIC

Setup Class: (4D36E972-E325-11CE -BFC1-08002BE10318) Net

Controlling service:

PCI \\ VEN_10EC & DEV_8139 & SUBSYS _813910EC & REV_10 \\ 4 & 2E98101C & 0 & 48F0 - код екземпляра пристрою.
Name - назва
Setup Class - клас установки.
Controlling service - керуючий сервіс.

Для визначення поточного стану пристрою використовується підкоманду status:

devcon status ROOT \\ RDP * - відобразити стан драйверів, ідентифікатори яких починаються рядком ROOT \\ RDP, Т. Е. Які використовуються службою терміналів.

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

devcon -r install% WINDIR% \\ Inf \\ Netloop.inf * MSLOOP - встановити новий екземпляр петлевого адаптера. ключ -r вимагає перезавантаження після установки драйвера.

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

devcon classfilter upper! filter1! filter2 - видалити два заданих верхніх фільтра. Ознакою дії на видалення є символ ! перед ім'ям фільтра.

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

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

Утиліта DevCon дозволяє зупиняти, запускати або перезапускати окремо вибрані пристрою або групи пристроїв.

devcon disable \u003d mouse - відключити драйвер пристрою класу mouse, Тобто відключити миша.

devcon enable \u003d mouse - включити драйвер пристрою класу mouse

devcon restart \u003d mouse - перезапустити драйвер пристрою класу mouse

У практиці мережевого адміністрування, команду DevCon нерідко використовують для перезапуску мережевих адаптерів. Наприклад, для мережевого адаптера Realtek RTL8139, з ідентифікатором PCI \\ VEN_10EC & DEV_8139. . . можна скористатися командою:

devcon restart "PCI \\ VEN_10EC & DEV_8139 *"

Зверніть увагу - подвійні лапки в початковій частині ідентифікатора мережевого адаптера обов'язкові. В іншому випадку, символ & буде оброблений інтерпретатором CMD Windows як стандартний символ об'єднання команд - команди devcon restart "PCI \\ VEN_10EC і команди DEV_8139 * . Перша виконає рестарт для всіх існуючих в системі адаптерів виробника Realtek, а друга викличе повідомлення про те, що DEV_8139 * не є внутрішньою або зовнішньою командою, що виконується програмою або пакетним файлом.

Дуже часто утиліта DevCon використовується для блокування мережевої активності системи (тимчасового відключення всіх мережевих пристроїв):

devcon disable \u003d net

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

Команда DevCon повертає наступні коди ErrorLevel:

0 - команда виконана успішно;
1 - потрібно перезавантажити комп'ютер;
2 - команда не виконана;
3 - синтаксична помилка.

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

Зверніть увагу на те, що 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 або скопіювати їх в уже існуючий каталог для пошуку.

Завантажити ZIP-архів 32-розрядної утиліти DevCon.exe. Працює в 32- і 64-розрядних ОС Windows Vista, Windows 7 і пізніших.

Завантажити ZIP-архів утиліти DevCon.exe, розробленої тільки для 64-розрядної ОС Windows XP. Чи не працює в 64-розрядних ОС Windows Vista, Windows 7/8 і пізніших.

Завантажити ZIP-архів утиліти DevCon.exe 32-х і 64-розрядних ОС з пакета Enterprise Windows Driver Kit for Windows 10, version 1804 (EWDK). Перевірено на серверних ОС Windows і 32-х і 64-розрядних ОС Windows 7-10.

Повернемося до вирішення моєї завдання. Для того, щоб відобразити всі існуючі в системі мережеві пристрої, необхідно ввести наступне:

C: \\\u003e devcon.exe find \u003d net

Програма відобразила 7 пристроїв! У мене на сервері всього 2 мережеві карти Intel® PRO / 1000 EB Network Connection. Але тут я згадав, що диспетчер пристроїв не відображає приховані пристрої. Щоб їх побачити необхідно у вікні диспетчера пристроїв вибрати в меню "Вид" -\u003e "Показати приховані пристрої". Тепер все в нормі! :)

Для того, щоб відключити всі показані мережеві пристрої, необхідно дати таку команду (краще не робити цього віддалено!):

C: \\\u003e devcon.exe disable \u003d net

Диспетчер пристроїв чесно нам покаже, що все мережні пристрої вимкнено. Мережа повністю відключена, що нам і потрібно.

Для того, щоб включити мережеві пристрої, необхідно дати команду:

C: \\\u003e devcon.exe enable \u003d net

Проконтролюємо включення всіх мережевих пристроїв в диспетчері пристроїв.

Нам залишилося написати два командних файлу з зазначеними вище командами включення і відключення мережевих пристроїв і зробити на основі них завдання, щоб вони виконувалися в необхідний час.

Мені залишилося тільки нагадати, так як за допомогою програми DevCon ви можете відключити практично будь-який пристрій свого комп'ютера, користуватися їй треба дуже обережно! Забороняється відключати пристрої по масці, не виймайте невідомі вам пристрою, ви таким чином можете добитися повної непрацездатності своєї операційної системи.

"Скажіть, а де можна дізнатися пароль до архіву MultiKey?"

На сторінці завантажень написаний пароль до всіх архівів, він відповідає назві сайту - " сайт"

"У чому відмінність сервісів тестування програм і створення бекапа ключа?"

Сервіс тестування програм включає в себе більш повний аналіз тестової програми, виявлення і обхід захисних механізмів, визначення загальної стійкості захисту.
Результатом такого тестування при успішному його результаті є створення тестового ПО (емулятора) для обходу (відключення) захисних механізмів і створення рекомендацій щодо посилення захисту.
Сервіс створення бекапа ключа - це створення резервної копії даних з ключа, зазвичай оформляється у вигляді емулятора даного ключа.
Аналіз ПО в даном випадку не проводиться, резервна копія формується на основі даних, отриманих від користувача.

"Які дані будуть необхідні при замовленні тестування або бекапа?"

При замовленні тестування ПО або бекапа ключа будуть необхідні такі дані:

  1. Дамп ключа захисту - робиться дампер для відповідного типу ключа.
  2. Лог підключення ключа і запуску тестованого ПО. Список робляться програмою UsbTrace. Як правильно зняти логи дивитися
  3. Дистрибутив програми. Обов'язковий для тестування ПО. При бекапе необхідний в деяких випадках.

"Не можу встановити мультики на Віндоус 7 64-х, під час запуску інсталл видає наступне: devcon не є внутрішньою або зовнішньою командою, що виконується програмою або пакетним файлом?"

Загальний порядок установки емулятора на 64-біт системи.

  1. На 64-біт системи установка емулятора можлива тільки в режимі відключення проверкм цифрового підпису драйверів. Для цього на початку завантаження ОС натиснути F8 і вибрати режим відключення перевірки цифрового підпису драйверів. Ця дія треба виробляти при кожному запуску ОС, або для автоматизації процесу використовувати сторонні утиліти типу "dseo13b".
  2. Перед установкою (перевстановлення) емулятора обов'язково необхідно видалити стару версію (Remove.cmd) і очистити системні файли (Infclean.exe). зазначені програми знаходяться в папці з емулятором. Всі дії необхідно виконувати з правами адміністратора. Для цього у властивостях файлів devcon.exe, infclean.exe встановити галочку "Виконувати цю програму від імені адміністратора" на вкладці "Сумісність".
  3. Встановити reg-файл дампа ключа з валидной ліцензією.
  4. Встановити емулятор (install.cmd). В процесі установки ОС повинна видати повідомлення про спробу установки непідписаного драйвера. Дозволити установку. Якщо встановлений коректно reg-файл з валидной ліцензією то через деякий час ОС повинна виявити підключення віртуального ЮСБ-пристрої на кшталт моделі емульованого ключа.