17

Есть ли способ включить / отключить интерфейс беспроводной сети через командную строку (чтобы я мог поместить его в файл bat)?

Когда я нахожусь в офисе, я использую проводное соединение, но Windows по-прежнему время от времени выдает сообщение о том, что мое беспроводное соединение не подключено (хотя я отключил опцию уведомления, когда нет соединения). Я предполагаю, что единственный способ не дать мне вызвать это - отключить интерфейс, но я бы предпочел не заходить в настройки сети каждый раз, когда мне это нужно.

Я хотел бы настроить файл bat или ярлык, который я могу использовать для включения / выключения беспроводной связи (предпочтительно один, который переключает текущее состояние), а затем просто настроить комбинацию клавиш для этого. Я просто не знаю, как это сделать из командной строки.

7 ответов7

12

Следующее работает на Win 7 из cmd строки с правами admin :

Отключить:

netsh interface set interface "Wireless Network Connection" Disable

Включить:

netsh interface set interface "Wireless Network Connection" Enable

Чтобы получить имена интерфейсов:

C:\Users\nirmal>netsh interface show interface

Admin State    State          Type             Interface Name
-------------------------------------------------------------------------
Enabled        Connected      Dedicated        Wireless Network Connection
Disabled       Disconnected   Dedicated        Local Area Connection
9

Я хотел бы настроить файл bat или ярлык, который я могу использовать, чтобы включить / отключить беспроводной

Используйте Microsoft DevCon ...

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

И вот учебник для вас:

Включить / отключить беспроводную карту из командной строки

предпочтительно один, который переключает текущее состояние

Вам понадобятся два пакетных файла, один для WiFi Off и один для WiFi On.

Сказав это, я предполагаю, что вы используете ноутбук. Вы уверены, что ваш ноутбук не позволяет включать / выключать WLAN с помощью комбинации клавиш Fn или физического коммутатора? Можете ли вы опубликовать марку и модель?

2

К вашему сведению ... для 64-битной версии Vista и Win7 "64-битная" версия, указанная выше, не будет работать. Вы должны загрузить весь комплект драйверов устройства Windows, а затем извлечь devcon.exe отсюда:C:\WinDDK\7600.16385.1\tools\devcon\amd64\devcon.exe и вставить в c:\Windows/system23 (я знаю, Я знаю ... У меня также есть Intel i3, и я все еще должен был использовать этот "amd64")

Комплект WinDDK можно найти здесь: http://www.microsoft.com/whdc/DevTools/WDK/WDKpkg.mspx. Он огромен (620 МБ). Файл devcon крошечный. :п

Примечание. Простой способ найти номер драйвера устройства для любого устройства - перейти в диспетчер устройств (из панели управления), посмотреть свойства и в разделе "подробности" выбрать "Идентификаторы оборудования". Там будет большое число, вы просто хотите эту часть: DEV _???? (заполните? с вашими 4 номерами). Например, если это DEV_4315 поместите это в enable.bat: devcon enable "* DEV_4315" и добавьте в disable.bat: devcon disable "* DEV_4315".

Пожалуйста, убедитесь, что добавили подстановочный знак перед ним: * DEV _???? (см. 2 примера, которые я только что дал). Вам нужно будет запустить их от имени администратора. К вашему сведению ... если у вас есть индикатор оборудования, то, вероятно, он не будет переключаться.

2

Я сделал пакетный файл для переключения между LAN и WLAN. Он включает подключение к локальной сети и отключает подключение к беспроводной локальной сети, если активна беспроводная локальная сеть, и наоборот.

Пакетный файл был протестирован в Windows 7. Назовите его WLAN-LAN.bat и запустите его как запрос с повышенными правами .

@Echo off

Echo De Netwerkinstellingen worden omgezet van WLan naar LAN of Vice Versa ! 
Echo Even Geduld svp  .................................................

net start dot3svc
netsh lan show interfaces >NUL

if errorlevel 1 goto LAN
if errorlevel 0 goto WLAN

:LAN

netsh interface set interface "Draadloze netwerkverbinding" disabled >NUL

sc start dot3svc >NUL
netsh interface set interface "LAN-verbinding" enabled >NUL

goto end

:WLAN

sc start dot3svc >NUL
netsh interface set interface "LAN-verbinding" disabled >NUL
sc stop dot3svc >NUL

netsh interface set interface "Draadloze netwerkverbinding" enabled >NUL

:end

Вы должны изменить имена сетевых интерфейсов, чтобы они соответствовали сетевым интерфейсам в вашей собственной системе. Так что меняйте имена между кавычками: «...».

Далее, если вы установите автоматический режим проводной автоматической настройки. Текст в комментариях может быть изменен по вашему желанию.

1

используйте этот файл для переключения WLAN.

@Echo off set interface="Wireless Network Connection " ipconfig | find %interface% >NUL rem if errorlevel 0 goto LAN rem if errorlevel 1 goto WLAN if %errorlevel% EQU 0 goto LAN if %errorlevel% EQU 1 goto WLAN :LAN echo "LAN" netsh interface set interface %interface% disabled goto end :WLAN echo "WLAN" netsh interface set interface %interface% enabled :end

0

Это может быть возможно с помощью утилиты wmic (хотя я не уверен, что она поставляется с Windows Vista/7/и т.д.)

или же

(хотя это забавный способ сделать это и может сломать что-то, и это может работать не так хорошо) используйте инструмент netsh (также он может не входить в новые версии Windows), чтобы дать сетевому адаптеру назначенный вручную IP-адрес если он должен иметь автоматически назначенный, или наоборот.

0

Другая возможность - Sikuli Script. Sikuli - это действительно круто, потому что он требует визуального подхода к написанию сценариев и должен легко выполнять то, что вам нужно. Посмотрите видео по ссылке выше, чтобы понять, что я имею в виду. Sikuli работает на Mac, Windows и Linux.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .