Автозапуск мобильного хотспота (Wi-Fi точки доступа) в Windows

Многие пользователи используют свои ноутбуки с Windows в качестве виртуальной Wi-Fi точки доступа, раздающий Интернет другим устройствам. Главная проблема – такая программная точка доступа на Windows не включается автоматически после выключения или перезагрузки компьютера. В этой статье мы рассмотрим, как настроить автозапуск мобильного хотспота в Windows 11 и 10 при загрузке компьютера с помощью PowerShell скрипта.

Мобильный хотспот (Mobile Hotspot) – предпочтительный способ организации программной точки доступа Wi-Fi в Windows 11 и Windows 10 (с версией 1607 и выше) по сравнению с классической функцией виртуальной размещенной сети (hosted network). Отличия между ними рассмотрены в статье Раздача интернета через Wi-Fi в Windows.

В настройках Мобильной точки доступа в Windows 11 отсутствуют опции для автоматического ее запуска после перезагрузки. Пользователю приходится каждый раз заходить в настройки и включить точку доступа вручную.

Для запуска мобильной точки доступа в Windows из командной строки PowerShell можно использовать следующие команды:

$profile = [Windows.Networking.Connectivity.NetworkInformation,Windows.Networking.Connectivity,ContentType=WindowsRuntime]::GetInternetConnectionProfile() $tethering = [Windows.Networking.NetworkOperators.NetworkOperatorTetheringManager,Windows.Networking.NetworkOperators,ContentType=WindowsRuntime]::CreateFromConnectionProfile($profile) $tethering.StartTetheringAsync()

Наша задача – запустить эти PowerShell команды автоматически при загрузке Windows. Проще всего это реализовать с помощью задания планировщика Windows:

  1. Откройте консоль Task Scheduler, выполнив команду taskschd.msc
  2. Создайте новое задание: Action -> Create Task
  3. На вкладке General настройте:
    Имя задания: AutoStartMobileHotspot

    Нажмите Change User or Group -> укажите System (для запуска задания от имени системы)
    Включите опцию Run with highest privileges.

  4. Перейдите на вкладку Trigger и новое добавьте правило для запуска задания при загрузке компьютера (At startup). Добавьте дополнительную задержку запуска Delay task for: 2 минуты (нужны для ожидания корректной инициализации сетевых служб по загрузки).
  5. На вкладке Action добавляем задание запуска PowerShell скрипта.Action: start a program
    Program: powershell.exe
    Arguments:
    -NoProfile -ExecutionPolicy Bypass -Command "&{$rs=[runspacefactory]::CreateRunspace();$rs.ApartmentState='STA';$rs.ThreadOptions='ReuseThread';$rs.Open();$ps=[powershell]::Create().AddScript('[Windows.Networking.Connectivity.NetworkInformation,Windows.Networking.Connectivity,ContentType=WindowsRuntime]::GetInternetConnectionProfile()|%{[Windows.Networking.NetworkOperators.NetworkOperatorTetheringManager,Windows.Networking.NetworkOperators,ContentType=WindowsRuntime]::CreateFromConnectionProfile($_).StartTetheringAsync()}');$ps.Runspace=$rs;$ps.Invoke();$rs.Close()}"

    Опция -noprofile – используется для ускорения запуска кода PowerShell за счет игнорирования загрузки профилей пользователей.

  6. Сохраните задание.
  7. Перезагрузите компьютер и проверьте, что мобильная точка доступа wifi теперь стартует автоматически.

С помощью следующего PowerShell скрипта можно быстро создать такое задание планировщика со всеми настройками:

$action = New-ScheduledTaskAction -Execute "powershell.exe" -Argument '-NoProfile -ExecutionPolicy Bypass -Command "&{$rs=[runspacefactory]::CreateRunspace();$rs.ApartmentState=''STA'';$rs.ThreadOptions=''ReuseThread'';$rs.Open();$ps=[powershell]::Create().AddScript(''[Windows.Networking.Connectivity.NetworkInformation,Windows.Networking.Connectivity,ContentType=WindowsRuntime]::GetInternetConnectionProfile()|%{[Windows.Networking.NetworkOperators.NetworkOperatorTetheringManager,Windows.Networking.NetworkOperators,ContentType=WindowsRuntime]::CreateFromConnectionProfile($_).StartTetheringAsync()}'');$ps.Runspace=$rs;$ps.Invoke();$rs.Close()}"' $trigger = New-ScheduledTaskTrigger -AtStartup; $trigger.Delay = 'PT2M' Register-ScheduledTask -TaskName "AutoStartMobileHotspot" -Action $action -Trigger $trigger -User "SYSTEM" -RunLevel Highest -Force

Проверить, что задание планировщика включено:

Get-ScheduledTask AutoStartMobileHotspot

Выполнить тестовый ручной запуск задания:

Start-ScheduledTask AutoStartMobileHotspot

Чтобы отключить автозапуск мобильного Wi-Fi хот-спота при загрузке Windows, выключите задание планировщика командой:

Disable-ScheduledTask AutoStartMobileHotspot

Чтобы ваша точка доступа Wi-Fi не выключалась по неактивности (если нет подключённых клиентов), отключите опцию Power Saving в настройках мобильного хот-спота.


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *