" title="Написать письмо">Написать письмо
Донаты на карту ВТБ:
2200 4002 2461 6363

Статистика

Пользователи : 1
Статьи : 2172
Просмотры материалов : 8114594
 
Отключение-удаление устройств консолью (16.04.2025). Печать E-mail
2025 - Апрель
16.04.2025 13:30
Save & Share
Нетривиальная узкоспециализированная задача под Windows. Была бы и под Linux - цены бы не было.

У меня: глючит звуковая карта при вставке наушников - требуется перезапуск вполне конкретного устройства в диспетчере устройств - всё приходит в норму - хотелось бы автоматизации или хотя бы полуавтомата.

У других: требуется перезапуск узкоспециализированных устройств, в т.ч. каких-то активных меганаушников. У бюджетников: если не успеваешь противодействовать внешним врагам аппаратно - можно противодействовать программно: удалённое устройство из системы - никому не видно до перезагрузки.


Эту рутину должен был сделать стажёр ещё недели 2 назад. Но он всё перепутал (см. видео на ютубе "Гомер душит Барта"). В результате, это вылилось не просто в рутину, а в гемор с дезинформацией со стороны стажёра. Чтобы пройти путь без гемора и без рутины - предлагается выжимка (не доверяя информации в интернете):
- всего 2 утилиты могут решить поставленные задачи: встроенная PnpUtil.exe (Windows 10 v.22H2 и новее) и внешняя DevCon.exe (старее Windows 10 v.22H2 - вплоть до Windows XP x32 без SP). Для получения этого абзаца: пришлось перелопатить 16 виртуалок с 16 разными Windows, составить каталог утилит из всех ОС и протестировать их почти во всех ОС. Дополнительно, для получения корректных devcon.exe: пришлось прорываться через 1 вирус, кучу неработающего говна и требующий регистрации и авторизации гугл диск;
- полученные успешные результаты, среди кучи неуспешных, порождают условия: запуск ярлыка командной строки CMD от имени админа (точно обязательно для PnpUtil), для PnpUtil использовать именно путь к экземпляру устройства (всегда одна строка в диспетчере устройств), для DevCon использовать именно ИД оборудования (верхнюю строку из присутствующих), использовать кавычки для строк диспетчера устройств. ИД оборудования в XP x32 называется "Коды (ID) оборудования";
- PnpUtil всегда встроена в ОС, корректные DevCon для старых Windows - прилагаются (в т.ч. для любимой хрюши);
- если вдруг не совместилась с ОС версия утилиты x64 - стоит попробовать x32;
- неработоспособность PnpUtil (не добавлен ещё функционал был) замечена у Windows 10 v.10.0.240 (в т.ч. с обновлениями). В какой именно промежуточной версии до v.22H2 появился новый функционал - неизвестно. Подмена в старой Windows 10 утилиты от новой - провал;
- BAT-файл, запущенный от имени админа, - работает корректно.




(добавлено 17.04.2025) Если устройство используется, хоть и некорректно работает, - отключить его не удастся ни в диспетчере, ни через BAT-файл. Если устройство перестаёт использоваться - некорректное отключение уже произошло, корректность отключения будет достигнуто после некоего ожидания, в районе 0.5мин. Если же пытаться сразу отключать устройство - оно, типа, отключается, - а на самом деле не отключается.


Для DevCon запуск от имени админа не требуется. Потому что в Windows XP использование администраторской учётки было на уровне бога, Windows 7 - полубога, Windows 10-11 - превратилась по уровню возможностей в непонятно что.

(добавлено 29.04.2025) В самом начале анализа, как удалять информацию о ранее подключенном оборудовании, выяснилось: в Astra SE - USB-устройства пишутся в логи ОС ещё до авторизации.
Обновлено ( 29.04.2025 10:46 )
 
 

Последние новости


©2008-2025. All Rights Reserved. Разработчик - " title="Сергей Белов">Сергей Белов. Материалы сайта предоставляются по принципу "как есть". Автор не несет никакой ответственности и не гарантирует отсутствие неправильных сведений и ошибок. Вся ответственность за использование материалов лежит полностью на читателях. Размещение материалов данного сайта на иных сайтах запрещено без указания активной ссылки на данный сайт-первоисточник (ГК РФ: ст.1259 п.1 + ст.1274 п.1-3).

Много статей не имеет срока устаревания. Есть смысл смотреть и 2011, и даже 2008 год. Политика сайта: написать статью, а потом обновлять ее много лет.
Рекламодателям! Перестаньте спамить мне на почту с предложениями о размещении рекламы на этом сайте. Я никогда спамером/рекламщиком не был и не буду!
Top.Mail.Ru