Ім'я файлу не є внутрішньою або зовнішньою командою, що виконується програмою або пакетним файлом. DevCon - диспетчер пристроїв у командному рядку Windows Devcon exe не є внутрішньою командою

Багато користувачів при введенні в консолі (або у вікні службової програми) ряду команд, одними з яких є "adb", "javac", "telnet", "fastboot"можуть зіткнутися з відмовою системи виконання цієї команди. І супутнім повідомленням, що вказана команда "Не є внутрішньою або зовнішньою командою, що виконується програмою або пакетним файлом" . Зазвичай це пов'язано з тим, що в системі прописаний шлях до файлу, що обслуговує цю команду, а також з тим, що потрібний компонент просто не встановлений у системі. У цьому матеріалі я розповім, у чому суть помилки «Не є внутрішньою або зовнішньою командою програми, що виконується (adb, javac, telnet, fastboot)», а також як її виправити.

Суть та причини дисфункції (adb, javac, telnet, fastboot)

Як я вже згадував вище, причиною появи цього повідомлення є відсутність у системи знання про місцезнаходження файлів, які запускаються даними командами (зазвичай файли мають ті ж назви, що й команди, наприклад, команда fastboot реалізується через файл fastboot.exe).

Шлях до потрібного файлу зазвичай прописаний у змінній "PATH"налаштувань системи (там має бути вказаний точний шлях до директорії, в якому розміщені вказані файли). Якщо потрібні шляхи там не прописані, то при введенні будь-якої з описаних команд система видає відповідь, що (ім'я файлу) не є внутрішньою або зовнішньою командою програми, що виконується.

Також причиною відсутності підтримки таких команд (зокрема «telnet») є відсутність даного компонента в системі (його необхідно встановити самостійно).

У системній змінній «Path» необхідно прописати шлях до директорії, де знаходиться файл, який ми запускаємо.

Не є внутрішньою чи зовнішньою командою – як виправити

Щоб позбавитися помилки «Не є внутрішньою чи зовнішньою командою» необхідно вказати системі шлях (англійською – «path») до директорій, де знаходяться потрібні нам файли.

Для цього необхідно точно знати, де знаходяться дані файли (наприклад, «javac» може знаходитися по дорозі С: Program Files Java jdk 1.8.0.45 bin (замість jdk 1.8.0.45 може бути jdk з іншим числом). Необхідно скопіювати вказаний шлях у буфер обміну (позначте його курсором, а потім натисніть клавіші Ctrl+C).

  1. Потім перейдіть на робочий стіл ПК, наводьте курсор на «Мій комп'ютер», натисніть на праву клавішу миші, у меню виберіть «Властивості».
  2. У вікні клікніть на « Додаткові параметрисистеми» зліва, а потім на кнопку «Змінні середовища».
  3. У «Системні змінні» шукаєте параметр «Path», і додайте туди після крапки з комою скопійований вами повний шлях з директорії Program Files\Java.
  4. Підтвердьте зміни, натиснувши на «Ок», потім знову відкрийте консоль, і наберіть потрібну команду (можете перезавантажити систему для профілактики), помилка може бути усунена.

Альтернативою може бути перенесення файлів, що не запускаються у відомі системі директорії (наприклад, на загальний кореневий каталог ОС Віндовс, або в C:\Windows\System32), зазвичай система працює з ними цілком коректно.

https://youtu.be/awfBpttu-g4

Також, у разі деяких компонентів (наприклад, «telnet») проблема з ними виникає через їхню відсутність у системі, тому їх необхідно доустановити.

  1. У випадку з "telnet" це робиться переходом в "Панель управління" - "Програми та компоненти" - "Увімкнення або вимкнення компонентів Windows".
  2. Знаходимо там "Клієнт Telnet" ставимо ліворуч від нього галочку, і натискаєте на "Ок".
  3. Програму буде встановлено та функціонал «telnet» має працювати коректно.

Висновок

Помилка «Не є внутрішньою чи зовнішньою командою (adb, javac, telnet, fastboot)» зазвичай виникає через відсутність у системи інформації про місцезнаходження даного файлу(остання зазвичай розміщена в змінній "Path"), або відсутність необхідного компонента в системі. Для виправлення помилки «не є внутрішньою чи зовнішньою командою» рекомендую прописати в параметрі «Path» повний шлях до папки, де знаходиться файл, а також доустановити проблемні компоненти в систему (якщо вони відсутні). Це дозволить стабілізувати роботу системи і пофіксувати помилку «Не є внутрішньою чи зовнішньою командою» на вашому ПК.

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

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

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

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

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

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

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


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

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


Встановити змінну «Path» в Windows 8/8.1/10

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

"Скажіть, а де можна дізнатися пароль до архіву 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-файл з валідною ліцензією, то через деякий час ОС повинна виявити підключення віртуального юсб-пристрою за типом моделі емульованого ключа.

Повернемося до вирішення мого завдання. Щоб відобразити всі наявні в системі мережні пристрої, необхідно ввести наступне:

C:\>devcon.exe find =net

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

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

C:\>devcon.exe disable =net

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

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

C:\>devcon.exe enable =net

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

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

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