Каждый раз, когда я подключаю новую мышь / клавиатуру или подключаю существующую к новому USB-порту, мне приходится вручную заходить в диспетчер устройств, переходить на страницу свойств устройства и снимать флажок «Разрешить этому устройству активировать компьютер» на страница «Управление питанием».
Можно ли настроить системную политику в Windows 7, чтобы по умолчанию этот флажок не устанавливался для новых USB-мышей / клавиатур?
Изменить: Если нет способа настроить такую системную политику, есть ли хотя бы способ перечислить и отключить USB-пробуждение на устройствах с помощью powercfg
в командном файле?
Изменить 2: Это должно быть возможно сделать , по крайней мере , используя powercfg
. powercfg devicequery wake_armed
дает список всех устройств, которые могут разбудить систему. Теперь, как я могу вернуть этот список обратно powercfg
и отключить пробуждение на перечисленных устройствах?
источник
Ответы:
Редактировать 2: разъяснение
Этот ответ не решает проблему в первоначальной редакции. Отключение пробуждения для всех будущих устройств не представляется возможным. Решение в этом ответе только позволяет отключить пробуждение для всех подключенных в данный момент устройств.
Мой оригинальный ответ:
Этот вопрос, кажется, был дан ответ в другом ответе SO
Это должно быть запущено от имени администратора.
Редактировать:
Чтобы обеспечить более полное решение, приведем скрипт, который запрашивает привилегии администратора перед запуском вышеуказанного цикла. Права администратора запрашиваются с помощью Microsoft Powertoy (написано на VisualBasic, что неудивительно)
источник
procmon
powertoy, чтобы отслеживать, к каким разделам реестра обращаются,powercfg -devicequery wake_armed
и написать свой собственный инструмент для работы с реестром.Чтобы ответить на вопросы в ваших правках:
Нет, вы не можете использовать powercfg для перечисления устройств для изменения поведения по умолчанию для всех будущих конфигураций USB, как вы задали в своем первоначальном вопросе.
Я попытался использовать
For /F "tokens=*" %%A in ('powercfg -devicequery wake_armed') do powercfg -devicedisablewake "%%A"
сценарий, но после подключения USB-устройства к новому порту по умолчанию он снова проснулся.Я даже пытался перечислить результат
powercfg -devicequery wake_from_any
, но кажется, что вы можете перечислять только подключенные USB-устройства. Дажеwake_from_any
аргумент возвращает новый список каждый раз, когда вы меняете порт, к которому подключено USB-устройство.Чтобы ответить на ваш оригинальный вопрос:
Я понятия не имею. Я действительно хочу знать ответ на этот вопрос, но я до сих пор не нашел ответа. Если кто-нибудь может понять это, вы будете очень любимы! <3
источник
[ ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ ] Это не ответ на вопрос ОП, а скорее решение проблемы, для которой вы, вероятно, оказались здесь!
Старый поток, но я пришел сюда в первую очередь для решения, которое я в конечном итоге решил по-другому, и теперь я делюсь.
[ ПРОБЛЕМА ] Моя проблема была связана с тем, что USB-устройство (контроллер xbox) не давало компьютеру проснуться или разбудить его, как только он перешел в спящий режим. Сначала мне нужно было сделать то, о чем говорил OP, после этого я использовал скрипт, размещенный здесь SnakE.
[ РЕШЕНИЕ ] Это было решено должным образом без каких-либо хакерских сценариев или ручного управления, просто путем настройки XHCI в BIOS, установив его из SmartAuto в значение Enabled.
[ БИТЫ ПОЧЕМУ ] Это заставляет контроллер USB на плате постоянно работать как USB3, а не понижать до USB2, а затем переключаться на USB3, когда ОС получает контроль. Принудительное поведение заставило себя решить проблему с драйвером USB-устройства, когда он пытался перевести компьютер в спящий режим / режим гибернации. Запуск Windows 10 со встроенными драйверами для USB3, поддерживающими режим XHCI, работает очень хорошо, поэтому при загрузке некоторых ОС, не поддерживающих USB3, могут возникнуть проблемы.
SmartAuto не должно было быть проблемой, потому что ( как указано здесь ) после первой загрузки контроллер должен оставаться на USB3, но, возможно, где-то в процессе принятия решения есть ошибка, и он вел себя как Auto на моей материнской плате Asus.
источник
Это, кажется, известная проблема документация может быть найдена здесь Резюме:
Обходной путь 1 (рекомендуется)
Подключите устройство USB к хост-контроллеру Enhanced Host Controller Interface (EHCI).
Обходной путь 2
Отключите возможность USB-устройства разбудить компьютер. Для этого выполните следующие действия:
Примечание. Рекомендуется использовать обходной путь 1, поскольку он сохраняет функциональность пробуждения. При использовании обходного пути 2 USB-устройства не могут разбудить компьютер. Кроме того, кнопка питания пульта дистанционного управления для ИК-приемника Windows Media Center не может разбудить компьютер.
источник