Вопрос или проблема
Я начинал с попытки использовать сочетание клавиш для отображения окна Статус соединения локальной сети на рабочем столе, создавая ярлык и назначив ему Ctrl+, (запятая).
Windows это не понравилось, и он добавил Alt, что в итоге стало Ctrl+Alt++,.
Поскольку я не смог выяснить, как исключить Alt из сочетания клавиш, я сейчас пробую другую стратегию, но это не срабатывает. Моя последняя попытка — использовать AutoHotkey с помощью следующей команды:
^,::Run, explorer ::{BA126ADB-2166-11D1-B1D0-00805FC1270E}
Это и есть номер целевого ярлыка, но окно не открывается.
Я собираюсь перечислить вручную шаги, необходимые для быстрого включения или отключения сетевого адаптера. Затем я переведу эти шаги в AutoHotkey.
Вручную:
-
Откройте Сетевые подключения из командной строки.
explorer ::{7007ACC7-3202-11D1-AAD2-00805FC1270E}
-
Как только окно станет активным, нажмите Space, чтобы установить фокус на список адаптеров.
-
Если адаптер, который вы хотите включить/выключить, в данный момент выбран (т.е. 1-й в списке), перейдите к Шагу #5.
-
Если адаптер не выбран, нажмите Right, пока он не будет выбран. Например, нажмите Right 1 раз, если адаптер 2-й в списке, 2 раза, если он 3-й и т.д.
-
Щелкните правой кнопкой мыши по адаптеру и нажмите Down, чтобы подчеркнуть опцию
Включить
илиОтключить
. -
Нажмите Enter, чтобы
Включить
илиОтключить
. -
Закройте Сетевые подключения.
Autohotkey:
Используя сочетание клавиш Ctrl+,
^,::
;1.
Run, explorer ::{7007ACC7-3202-11D1-AAD2-00805FC1270E}
;2.
WinWaitActive, Сетевые подключения
Send, {Space}
;3. & 4.
;Если адаптер не 1-й, перейдите к нему.
;Например, без комментария (точка с запятой):
; Send, {Right 1}
;если это 2-й адаптер.
; Send, {Right 2}
;если это 3-й, и т.д.
;5.
Send, {AppsKey}
Sleep, 250 ; настроить по необходимости
Send, {Down}
;6.
Send, {Enter}
;7.
WinClose, Сетевые подключения
return
Просто перейдите на экран, где находится иконка адаптера. Щелкните правой кнопкой и создайте ярлык (это не позволит добавить ярлык к этому окну, но позволит создать его на рабочем столе). Когда вы хотите включить или отключить адаптер, просто щелкните правой кнопкой мыши по иконке на рабочем столе и выберите включить или отключить.
Если вы хотите простой способ включить или отключить ваш сетевой адаптер (или другое устройство), который обходит Панель управления, Диспетчер устройств и другие окна, вы можете сделать это при помощи пакетного файла:
-
Получите копию утилиты DevCon от Microsoft
-
Создайте и сохраните следующий пакетный файл (например, как
ToggleNIC.bat
)@echo off if (%1)==(+) goto enable if (%1)==(-) goto disable goto :eof
:: Замените идентификатор устройства ("VEN_1234&DEV_5678" в примере) на свой идентификатор сетевого адаптера. :: Вы можете найти его с помощью команды "devcon find PCI*", ища название вашего сетевого адаптера.
:: Когда вы найдете идентификатор устройства, введите только до "DEV"; этого должно быть достаточно, чтобы уникально идентифицировать устройство. :: Оставьте части "SUBSYS" и последующих строк, иначе это может не сработать.
:enable devcon enable "PCI\VEN_1234&DEV_5678" goto :eof
:disable devcon disable "PCI\VEN_1234&DEV_5678" goto :eof -
Создайте два ярлыка к пакетному файлу (например,
EnableNIC.lnk
иDisableNIC.lnk
), в одном указав поле Цель какC:\…\ToggleNIC.bat +
, а для другогоC:\…\ToggleNIC.bat -
(конечно, замените…
на путь к пакетному файлу) -
Установите горячую клавишу в диалоговом окне Свойства для каждого ярлыка — Ctrl+Alt+Shift+Num+ и Ctrl+Alt+Shift+Num- будут хорошими, логичными вариантами.
- (Есть причина, по которой Проводник пытается предотвратить простые сочетания клавиш в формате Ctrl+Key, Alt+Key и Shift+Key; потому что они обычно используются в программах для повседневных задач, поэтому использование их в качестве горячих клавиш оболочки могло бы вызвать массу проблем. Но, если вам действительно нужна, чтобы не использовать Alt, вы можете вручную изменить файл
.lnk
, или проще, просто используйте программу макросов/горячих клавиш, чтобы создать задачу для запуска пакетных файлов с любой горячей клавишей на ваш выбор.)
- (Есть причина, по которой Проводник пытается предотвратить простые сочетания клавиш в формате Ctrl+Key, Alt+Key и Shift+Key; потому что они обычно используются в программах для повседневных задач, поэтому использование их в качестве горячих клавиш оболочки могло бы вызвать массу проблем. Но, если вам действительно нужна, чтобы не использовать Alt, вы можете вручную изменить файл
- Кроме того, вы можете поместить пакетный файл где-то в вашем PATH, тогда вы сможете просто переключать сетевой адаптер через меню Пуск или диалоговое окно Выполнить; например, Win+R,
togglenic +
Вы также можете сделать так, чтобы пакетный файл буквально переключал сетевой адаптер (включал его, если он в данный момент отключен, или отключал его, если он в данный момент включен), но это будет немного сложнее и, вероятно, не обязательно в общем случае.
Пост iglvzx сначала не сработал для меня, но после небольших корректировок он сейчас работает. Ярлык работает как переключатель для проводного сетевого адаптера (отключить / включить). Все еще активируется клавишами Ctrl + J, как видно в первой строке. Если у вас нет Bluetooth адаптера, то вам нужно удалить строку 3. Если у вас есть дополнительный адаптер или вы хотите переключить беспроводной адаптер, вам может потребоваться добавить “{Right 1}”. В качестве альтернативы, просто измените количество правых вводов в строке ;3.
^j::
;1.
Run, explorer ::{7007ACC7-3202-11D1-AAD2-00805FC1270E}
;2.
WinWaitActive, Сетевые подключения
Send, {Space}
;3.
Send, {Right 1}
;4.
Send, {AppsKey}
Sleep, 250 ; настройте по необходимости
Send, {Down}
;5.
Send, {Enter}
;6.
WinClose, Сетевые подключения
return
Большое спасибо Synetech за публикацию вышеупомянутого решения, которое я считаю самым элегантным и надежным из всех предложенных решений. Тем не менее, утилита DevCon от Microsoft, используемая в пакетном файле, теперь заменена на PnPUtil, которая поставляется с каждой версией Windows и сейчас рекомендована.
Я модифицировал пакетный файл Synetech по мере необходимости, чтобы использовать PnPUtil для включения/отключения конкретного сетевого адаптера. Инструкции по использованию точно такие же, как упомянуто в решении Synetech, но обратите внимание на другой синтаксис при использовании PnPUtil для нахождения идентификатора устройства вашего сетевого адаптера, как указано в комментариях внутри пакетного файла. Я использую его уже месяц, и он работает как часы.
@echo off
if (%1)==(+) goto enable
if (%1)==(-) goto disable
goto :eof
:: Замените идентификатор устройства ("VEN_1234&DEV_5678" в примере) на свой идентификатор сетевого адаптера.
:: Вы можете найти его с помощью команды "pnputil /enum-devices /connected", ища
:: название вашего сетевого адаптера.
:: Когда вы найдете идентификатор устройства, введите только до "DEV"; этого должно быть достаточно, чтобы
:: уникально идентифицировать устройство. Оставьте части "SUBSYS" и последующих строк без них,
:: иначе это может не сработать.
:enable
pnputil /enable-device /deviceid "PCI\VEN_1234&DEV_5678"
goto :eof
:disable
pnputil /disable-device /deviceid "PCI\VEN_1234&DEV_5678"
goto :eof
Ответ или решение
Включение и отключение сетевого адаптера с помощью сочетания клавиш
Работа с сетевыми адаптерами — это важная часть администрирования систем, и возможность быстро включать или отключать их с помощью сочетаний клавиш может значительно повысить вашу продуктивность. В этой статье мы подробно рассмотрим, как это можно сделать с использованием различных методов, включая создание ярлыков, скрипты AutoHotkey и пакетные файлы на основе утилиты PnPUtil.
Методы включения и отключения сетевого адаптера
1. Ручной метод
Для начала, вы можете вручную открыть окно «Сетевые подключения» и управлять адаптерами. Вот последовательность действий:
- Открытие сетевых подключений: Введите следующую команду в командной строке:
explorer ::{7007ACC7-3202-11D1-AAD2-00805FC1270E}
- Установка фокуса на список адаптеров: Как только окно станет активным, нажмите
Space
, чтобы установить фокус на список адаптеров. - Навигация к нужному адаптеру: Если необходимый адаптер не выбран, используйте клавишу
Right
, чтобы выбрать требуемый адаптер. - Открытие контекстного меню: Нажмите
AppsKey
, чтобы открыть контекстное меню адаптера. - Выбор действия: Используйте клавишу
Down
, чтобы выбрать опциюEnable
илиDisable
. - Подтверждение действия: Нажмите
Enter
, чтобы выполнить выбранное действие. - Закрытие окна: Закройте окно «Сетевые подключения», нажав
Alt + F4
.
Этот метод является простым, но требует нескольких манипуляций.
2. Использование AutoHotkey
AutoHotkey — мощный инструмент для автоматизации задач в Windows. Вот как создать скрипт, который будет включать и отключать сетевой адаптер с помощью горячих клавиш:
^,:: ; Ваша горячая клавиша Ctrl + ,
Run, explorer ::{7007ACC7-3202-11D1-AAD2-00805FC1270E}
WinWaitActive, Сетевые подключения
Send, {Space}
; Навигация к адаптеру, если требуется
Send, {Right 1} ; Измените число для выбора другого адаптера, если требуется
Send, {AppsKey}
Sleep, 250 ; Корректировка задержки по необходимости
Send, {Down}
Send, {Enter}
WinClose, Сетевые подключения
return
Данный скрипт запускается по нажатии Ctrl + ,
, открывает окно сетевых подключений, и позволяет вам включать и отключать адаптер с помощью клавиш.
3. Пакетные файлы и утилита PnPUtil
Вы также можете использовать пакетные файлы для управления сетевыми адаптерами. Вот шаги по созданию процесса:
- Скачайте утилиту PnPUtil, которая встроена в Windows.
- Создайте пакетный файл (например, ToggleNIC.bat) со следующим содержимым:
@echo off
if (%1)==(+) goto enable
if (%1)==(-) goto disable
goto :eof
:enable
pnputil /enable-device /deviceid "PCI\VEN_1234&DEV_5678"
goto :eof
:disable
pnputil /disable-device /deviceid "PCI\VEN_1234&DEV_5678"
goto :eof
Замените PCI\VEN_1234&DEV_5678
на идентификатор вашего сетевого адаптера, который можно найти с помощью команды:
pnputil /enum-devices /connected
- Создайте ярлыки для этого пакетного файла с параметрами
+
и-
, чтобы включать и отключать адаптер соответственно. - Настройте горячие клавиши для каждого ярлыка в свойствах ярлыка.
Заключение
Теперь вы знаете, как включать и отключать сетевые адаптеры с помощью сочетаний клавиш в Windows — как вручную, так и с помощью автоматизации через скрипты и пакетные файлы. Эти навыки не только облегчат вашу работу, но и позволят вам быстрее решать возникающие проблемы с сетью.