我的互联网会随机断开连接,我必须进入适配器选项将其关闭并重新打开,才能使其重新开始工作。这很繁琐,我希望只需按下组合键即可完成此任务。我尝试用谷歌搜索,但我得到的只是有关特定软件(例如 Excel 或 Outlook)的宏的建议,而不是 Windows 本身。还有 AutoHotkey,但不确定这是否是我需要的。
答案1
选项 1 通过 PowerShell
您可以创建以下 PowerShell 脚本,如果当前用户未提升权限(具有管理员令牌),该脚本也会提示 UAC。
您应该在只有管理员具有写访问权限(出于安全原因)的地方创建它,例如C:\ProgramData\
或C:\Windows\
,并在保存后删除普通用户的写权限。
脚本中与网络重启相关的代码是Get-NetAdapter -Physical | Restart-NetAdapter
。
using namespace System.Security.Principal
$ErrorActionPreference = 'STOP'
try {
if ([WindowsPrincipal]::new(([WindowsIdentity]::GetCurrent())).IsInRole([WindowsBuiltInRole]::Administrator)) {
Get-NetAdapter -Physical | Restart-NetAdapter
} else {
# restart powershell as admin
$pwshExePath = (Get-Process -Id $PID).Path
$argumentList = '-File "' + $MyInvocation.MyCommand.Path + '" ' + $MyInvocation.UnboundArguments
Start-Process -FilePath $pwshExePath -Verb Runas -ArgumentList $argumentList
}
} catch {
Write-Error -ErrorRecord $_ -ErrorAction Continue
Read-Host 'Press [Enter] to close'
}
然后在桌面上创建以下快捷方式。
目标: powershell.exe -NoLogo -ExecutionPolicy ByPass -File C:\ProgramData\RunAs.ps1
对于 PowerShell Core 或:
目标: pwsh.exe -NoLogo -ExecutionPolicy ByPass -File C:\ProgramData\RunAs.ps1
添加powershell.exe
/ pwsh.exe
(带有一些参数)将允许您通过双击直接运行(脚本的)快捷方式。
您还可以添加键盘快捷键,如屏幕截图所示。
选项 2 通过批处理
您也可以使用批处理文件,例如@harrymc 提供的批处理文件,然后创建一个快捷方式,如下所示Option 1
如果您在属性中设置了快捷方式,则使用快捷方式将允许您以管理员身份运行它(提示:这不允许用于 PowerShell(.ps1)文件):
答案2
您可以使用.bat
以下命令来使用文件:
@echo off
netsh interface set interface "Connection name" disabled
timeout /t 2
netsh interface set interface "Connection name" enabled
这些命令不需要提升。
您可以创建一个指向该.bat
文件的桌面图标并可选择为其指定热键。