我编写了一个脚本,只需运行批处理文件即可在通过 Wi-Fi 或有线 Internet 连接计算机之间进行切换。我写这个是因为我不喜欢每次都输入我的用户名和密码来在两者之间切换。
注意:我必须启用 UAC,所以不幸的是,仅将其关闭不是一种选择。
它查看无线适配器的状态。如果当前已启用,它将关闭无线适配器并启用有线适配器。如果未启用无线,它将启用和禁用有线。这是代码。
$adapter = Get-WmiObject -Class Win32_NetworkAdapterConfiguration -Filter IPEnabled=TRUE -ComputerName . | Where-Object {$_.ServiceName -ne "hamachi"}
function wirelessOn
{
$wireless = Get-WmiObject -Class Win32_NetworkAdapter | Where-Object {$_.Name -like "*Wireless*"}
$wireless.Disable()
$wired = Get-WmiObject -Class Win32_NetworkAdapter | Where-Object {$_.Name -like "*gigabit*"}
$wired.Enable()
}
function wirelessOff
{
$wired = Get-WmiObject -Class Win32_NetworkAdapter | Where-Object {$_.Name -like "*gigabit*"}
$wired.Disable()
$wireless = Get-WmiObject -Class Win32_NetworkAdapter | Where-Object {$_.Name -like "*Wireless*"}
$wireless.Enable()
}
switch -wildcard ($adapter.description){
"*wireless*" {
wirelessOn
}
"*gigabit*" {
wirelessOff
}
}
不幸的是,这个脚本只有在以管理员身份运行时才能正常运行,因此我编写它的全部原因是没有实际意义的。有没有办法让我无需做任何事情就可以将其提升为管理员权限?