在浏览了 Tenforums 和 Eightforums 上发布的所有垃圾答案之后,我得出的结论是,几乎没有人知道如何关闭/打开飞行模式,而无需重新启动系统,即更改注册表设置。
是不是只有我一个人知道,还是大家都不知道任务栏中已经有一个选项,允许我们关闭/打开飞行模式而无需重新启动系统。因此,飞行模式可以并且应该能够从命令提示符/批处理文件运行,这绝对是有道理的,对吧?
所以最终的问题是,有人能告诉我如何从命令行或批处理文件执行此操作,而无需编辑注册表并进一步重新启动系统?
答案1
#1 option
只需使用命令行或命令/蝙蝠文件并禁用您的Wi-Fi 适配器:
%__APPDIR__%wbem\wmic.exe path win32_networkadapter where NetConnectionID="Wi-fI" call disable
启用:
%__APPDIR__%wbem\wmic.exe path win32_networkadapter where NetConnectionID="Wi-fI" call enable
观察:此命令行需要管理员权限
#2 option
您还可以使用混合蝙蝠包含代码的文件动态数据库,它将调用飞机界面模式并通过发送 [space] 键来禁用它:
0<!-- :
@cls & @echo off && mode 50,03 && title <nul && title .\%~nx0 && explorer.exe ms-settings:network-airplanemode
%__APPDIR__%wScript.exe "%~dpnx0?.wsf" && 2>nul >nul %__APPDIR__%taskkill.exe /FI "WindowTitle eq settings*"
goto :EOF & rem :: --> <job> <script language = "vbscript">
Set objShell = WScript.CreateObject("WScript.Shell")
objShell.AppActivate "settings"
WScript.Sleep 333
objShell.SendKeys " "
WScript.Sleep 333 </script></job>
- 或者,压缩代码......
0<!-- : &@cls & @echo off && mode 50,03 && title <nul && title .\%~nx0 && explorer.exe ms-settings:network-airplanemode
%__APPDIR__%wScript.exe "%~dpnx0?.wsf" && 2>nul >nul %__APPDIR__%taskkill.exe /FI "WindowTitle eq settings*"
goto :EOF & rem :: --> <job> <script language = "vbscript"> Set objShell = WScript.CreateObject("WScript.Shell")
objShell.AppActivate "settings": WScript.Sleep 500: objShell.SendKeys " ": WScript.Sleep 777: </script></job>
观察:要关闭/杀死窗口/界面,您需要编辑窗口标题的正确名称,在 pt-BR 中使用configur*
,我想也许用英语setting*
:
2>nul >nul %__APPDIR__%taskkill.exe /FI "WindowTitle eq settings*"
2>nul >nul %__APPDIR__%taskkill.exe /FI "WindowTitle eq settings*"
答案2
您需要知道机器的飞行模式的 GUID。
打开管理员命令提示符。
powercfg -list 查看计划和 GUID
然后,powercfg /delete {飞机计划的 GUID}。
重新启用飞行模式的方法有所不同:
开始、设置、网络、飞行模式、启用。
此后您需要 Windows 设置。这是一个专门的计划(因为它会关闭无线和蓝牙),因此最好由 Windows 管理。
您可以制作第一个设置的批处理文件(删除),但它对每台机器都是唯一的。如果需要,可以稍后重新启用。这不是一个有用的计划,我不需要它,因为我更有可能在飞机上使用手机。所以我删除了该计划。
注意:Windows Creator Feature Upgrade 似乎删除了除 Balanced Plan 之外的所有内容。我意识到我只有一个计划,而我以前有 3 或 4 个。因此,实际上,Windows 肯定最适合管理飞行模式。我不需要它,所以删除了它。您可能有同样的感觉(或没有)。但飞行模式仍然存在,并且可以通过 Windows 进行管理。
答案3
有一个注册表项可以执行此操作:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\RadioManagement\SystemRadioState
(默认)DWORD
0 = 关闭 1 = 开启
尝试这个批处理文件:
@echo off
(
echo Windows Registry Editor Version 5.00
echo.
echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\RadioManagement]
echo "SystemRadioState"=dword:0
) >temp.reg
reg import "temp.reg"
答案4
尽管这需要管理员,但这可能是最简单的方法。
:wifioff
net stop WlanSvc & goto :eof
:wifion
net start WlanSvc & goto :eof
交替重新启动,服务将自动重新启动,以防出现错误或快速修复,因为没有任何实际改变。