Powershell小技巧之设置IE代理
IE的代理设置位于注册表中:”HKCU:\Software\Microsoft\Windows\CurrentVersion\InternetSettings”下。关键键值为ProxyEnable和ProxyServer。所以通过更改注册表即可完成IE代理的设置。
FunctionSet-IEProxy
{
param(
[bool]$Enable=$false,
[string]$ProxyServer,
[ValidateRange(1,65535)]
[int]$port,
[bool]$EnableAutoDetectSetting
)
#设置IE代理
$proxyRegPath="HKCU:\Software\Microsoft\Windows\CurrentVersion\InternetSettings"
$enableProxy=Get-ItemProperty-Path$proxyRegPath-NameProxyEnable
if(-not$Enable){
Set-ItemProperty-path"HKCU:\Software\Microsoft\Windows\CurrentVersion\InternetSettings"-Name"ProxyEnable"-value0
Write-Host"IE代理已禁用。"
}
else{
Set-ItemProperty-path$proxyRegPath-Name"ProxyEnable"-value1
Set-ItemProperty-path$proxyRegPath-Name"ProxyServer"-value($ProxyServer+":"+$port)
Write-Host"IE代理已启用"
}
#设置IE自动检测配置
[byte[]]$bytes=$null
if($EnableAutoDetectSetting){
$bytes=[byte[]]@(70,0,0,0,38,0,0,0,9,0,0,0,10,0,0,0,50,46,49,46,49,46,51,58,51,51,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,172,18,32,72,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)
}
else{
$bytes=[byte[]]@(70,0,0,0,39,0,0,0,1,0,0,0,10,0,0,0,50,46,49,46,49,46,51,58,51,51,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,2,0,0,0,172,18,32,72,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)
}
Set-ItemProperty-Path"$proxyRegPath\Connections"-NameDefaultConnectionSettings-Value$bytes
}
PS>Set-IEProxy-Enable$false
IE代理已禁用。 PS>Set-IEProxy-Enable$true-ProxyServer2.1.1.3-port33 IE代理已启用 PS>Set-IEProxy IE代理已禁用。 PS>Set-IEProxy-EnableAutoDetectSetting$true IE代理已禁用。 PS>Set-IEProxy-EnableAutoDetectSetting$false IE代理已禁用。
支持所有PS版本