如何通过命令行在 Windows 10 中切换 Wi-Fi?

如何通过命令行在 Windows 10 中切换 Wi-Fi?

图片:Windows 10 中的 Wi-Fi 切换按钮

如果我尝试在 Wi-Fi 切换开关关闭的情况下连接无线网络netsh wlan connect,则会显示以下错误:

函数 WlanGetAvailableNetworkList 返回错误 2150899714:

无线局域网接口已关闭,不支持请求的操作。

我尝试使用 重新启用无线接口netsh int set int,但似乎无法重新切换 Wi-Fi 按钮。如果 Wi-Fi 切换开关被禁用,如何通过命令行连接到无线网络?我怀疑当我尝试将笔记本电脑连接到 Wi-Fi 时,也出现了类似的问题——Windows 10 升级损坏,导致 explorer.exe 无法正常工作。

网络接口已启用,所以这不是问题。它似乎与 Wi-Fi 切换开关无关。

对于未来的读者:当前标记的答案非常好,但需要“设置”应用正常运行。这可能并不总是发生在安装不全的情况下(发生在损坏的 Windows 10 更新中),其中只有命令提示符正常运行。如果提供了仅使用命令提示符的方法,请添加新答案。

注意:这个问题不是无法通过命令行启用“Wi-Fi”接口(Windows 10)。该问题与特定错误消息有关(这似乎是与此问题无关的错误)。此问题是为了跟进通过 cmd 切换 Windows 10 中的 Wi-Fi 按钮的更具体问题而创建的。

答案1

下面是一个批处理脚本,它将切换无线上网任何一个或者离开运行时的相反状态。这用于ms-settings:network-wifi打开无线网络设置屏幕,然后按下空格键一次,使用发送键切换。此方法使用批处理脚本构建动态 vb 脚本,然后使用脚本模拟按下空格键。

GUI 切换

在此处输入图片描述


脚本

笔记: .bat只需将其保存为带有或扩展名的文本文件.cmd并执行即可运行。

@ECHO OFF

explorer ms-settings:network-wifi
ping -n 5 127.0.0.1 > nul

:VBSDynamicBuild
SET TempVBSFile=%tmp%\~tmpSendKeysTemp.vbs
IF EXIST "%TempVBSFile%" DEL /F /Q "%TempVBSFile%"
ECHO Set WshShell = WScript.CreateObject("WScript.Shell") >>"%TempVBSFile%"
ECHO Wscript.Sleep 500                                    >>"%TempVBSFile%"
ECHO WshShell.SendKeys " "                                >>"%TempVBSFile%"
ECHO Wscript.Sleep 500                                    >>"%TempVBSFile%"

CSCRIPT //nologo "%TempVBSFile%"
EXIT


更多资源

相关内容