笔记本用WIFI打游戏延迟间歇性变高的解决办法
Aruvin
2025年07月04日 14:42

参考来源国外网友,地址无法出现在此故不展示。

具体原因为Windows在已经连接WIFI的情况下仍然会周期性自动搜索附近可用WIFI,在搜索时占用网卡导致延迟变高和丢包,与路由器和无线网卡无关。

具体解决方法如下:

查看当前无线网卡信息:

netsh wlan show settings

输入类似下面:

Wireless LAN settings

---------------------

  Show blocked networks in visible network list: No

  Only use GP profiles on GP-configured networks: No

  Hosted network mode allowed in WLAN service: Yes

  Allow shared user credentials for network authentication: Yes

  Block period: Not Configured.

  Auto configuration logic is disabled on interface "Wi-Fi"

  MAC randomization disabled on interface Wi-Fi

倒数第二行: Auto configuration logic is disabled on interface "Wi-Fi"

表示已经关闭自动配置,Windows就不会在后台周期性搜索附近WiFi。

如何关闭:

提醒:关闭自动配置的副作用是无法看到周围WiFi列表,所以需要先连上WiFi再关闭自动配置。下面命令中双引号的"Wi-Fi"也可能为“WLAN”,根据上面命令的输出修改。

netsh wlan set autoconfig enabled=no interface="Wi-Fi"

由于关闭自动配置后无法看到周围WIFI列表,所以重启电脑后连接WIFI时需要再次打开。

如何打开:

netsh wlan set autoconfig enabled=yes interface="Wi-Fi"

如果你觉得每次输入命令很麻烦,下面是脚本,在powershell 7环境下写的,powershell 5能不能用不清楚。复制分割线下方的内容,新建一个txt文件,粘贴进去,将txt后缀改为ps1,右键单击,点击运行,使用箭头上下选择。由于涉及到网卡配置修改,运行可能需要管理员权限。


function Select-Option {

    param (         [Parameter(Mandatory = $true)]         [string[]]$Options     )     $selectedIndex = 0     $key = $null     while ($key -ne [ConsoleKey]::Enter) {         Clear-Host         for ($i = 0; $i -lt $Options.Length; $i++) {             if ($i -eq $selectedIndex) {                 Write-Host "-> $($Options[$i])" -ForegroundColor Cyan             }             else {                 Write-Host "   $($Options[$i])"             }         }         $key = [Console]::ReadKey($true).Key         switch ($key) {             ([ConsoleKey]::UpArrow) {                 if ($selectedIndex -gt 0) {                     $selectedIndex--                 }             }             ([ConsoleKey]::DownArrow) {                 if ($selectedIndex -lt $Options.Length - 1) {                     $selectedIndex++                 }             }         }     }     return $Options[$selectedIndex] } $options = @(     "选项 1:显示当前 WiFi 设置",     "选项 2:禁止无线网卡自动配置",     "选项 3:允许无线网卡自动配置" ) $selectedOption = Select-Option -Options $options switch -Wildcard ($selectedOption) {     "*选项 1*" {         Write-Host "你选择了显示当前 WiFi 设置,正在执行命令..."         netsh wlan show settings     }     "*选项 2*" {         Write-Host "你选择了禁止无线网卡自动配置,正在执行命令..."         netsh wlan set autoconfig enabled=no interface="Wi-Fi"     }     "*选项 3*" {         Write-Host "你选择了允许无线网卡自动配置,正在执行命令..."         netsh wlan set autoconfig enabled=yes interface="Wi-Fi"     } }