公众号旧文
一键把所有无线局域网都改成不自动连接
不知道有多少人有这样的需求:
所处的环境中有多个无线局域网,偶尔需要切换到另一个,但是大多数时间,连的都是固定的某一个,此时就需要关闭其他SSID的自动连接,不然进入这个环境时,自动连接会导致不一定连上的是哪一个。
一、实现原理
- Windows 会保存你连过的 Wi-Fi(SSID 配置)
- 每个配置里有一个
ConnectionMode - 我们做的事:
二、PowerShell 脚本
⚠️ 必须用“管理员身份”运行 PowerShell
# 获取当前已连接的 WiFi SSID
$currentSSID
= (netsh wlan show interfaces |
Select-String
"SSID"
|
Where-Object
{
$_
-notmatch
"BSSID"
} |
ForEach-Object
{
(
$_
-split
":"
,
2
)[
1
].Trim()
})
Write-Host
"当前连接的 WiFi:"
$currentSSID
# 获取所有已保存的 WiFi 配置
$profiles
= netsh wlan show profiles |
Select-String
"所有用户配置文件"
|
ForEach-Object
{
(
$_
-split
":"
,
2
)[
1
].Trim()
}
foreach
(
$ssid
in
$profiles
) {
if
(
$ssid
-ne
$currentSSID
) {
Write-Host
"设置 [
$ssid
] 为不自动连接"
netsh wlan
set
profileparameter name=
"
$ssid
"
connectionmode=manual |
Out-Null
}
}
三、使用方法
- 开始菜单
- 搜索 PowerShell
- 右键 → 以管理员身份运行
- 粘贴上面的代码
- 回车执行
执行完成后:
- ✅ 当前 Wi-Fi 不受影响
- ❌ 其它所有 Wi-Fi 都不会再自动连