我正在寻找允许我通过命令行更改IE连接代理信息的选项。
答案 0 :(得分:4)
IE代理设置通过注册表项控制。通常,您应该手动更改它们,因为此实现细节可以在不同版本之间更改。但是,作为一个调试工具,它很有用。
无论如何,您可以使用REG
命令从命令行更改注册表项。具体来说,我只是创建一些.reg文件,其中包含您要更改的各种状态并执行REG IMPORT example-file.reg
。或者,如果失败,REG ADD
。
答案 1 :(得分:3)
proxycfg可能是您正在寻找的工具。
C:\>proxycfg /?
Microsoft (R) WinHTTP Default Proxy Configuration Tool
Copyright (c) Microsoft Corporation. All rights reserved.
usage:
proxycfg -? : to view help information
proxycfg : to view current WinHTTP proxy settings
proxycfg [-d] [-p <server-name> [<bypass-list>]]
-d : set direct access
-p : set proxy server(s), and optional bypass list
proxycfg -u : import proxy settings from current user's
Microsoft Internet Explorer manual settings (in HKCU)
在Windows XP中运行良好 在下一个Windows版本中,您可以使用:
C:\>netsh winhttp import proxy source=ie
从Internet Explorer导入代理设置 和
C:\>netsh winhttp reset proxy
重置代理设置 如需更多帮助,请使用:
C:\>netsh winhttp /?
但是这些更改可能不会反映在Internet Explorer中。尽管如此,您应该能够在命令行应用程序中使用代理。
答案 2 :(得分:1)
答案 3 :(得分:0)
您也可以通过powershell来实现:
<#
.Synopsis
This function will set the proxy settings provided as input to the cmdlet.
.Description
This function will set the proxy server and (optinal) Automatic configuration script.
.Parameter ProxyServer
This parameter is set as the proxy for the system.
Data from. This parameter is Mandatory
.Example
Setting proxy information
Set-InternetProxy -proxy "proxy:7890"
.Example
Setting proxy information and (optinal) Automatic Configuration Script
Set-InternetProxy -proxy "proxy:7890" -acs "http://proxy:7892"
#>
Function Set-InternetProxy {
[CmdletBinding()]
Param(
[Parameter(Mandatory = $True, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true)]
[String[]]$Proxy,
[Parameter(Mandatory = $False, ValueFromPipeline = $true, ValueFromPipelineByPropertyName = $true)]
[AllowEmptyString()]
[String[]]$acs
)
Begin {
$regKey = "HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings"
}
Process {
Set-ItemProperty -path $regKey ProxyEnable -value 1
Set-ItemProperty -path $regKey ProxyOverride -Value "<local>"
Set-ItemProperty -path $regKey ProxyServer -value $proxy
if ($acs) {
Set-ItemProperty -path $regKey AutoConfigURL -Value $acs
}
}
End {
Write-Output "Proxy is now enabled"
Write-Output "Proxy Server : $proxy"
if ($acs) {
Write-Output "Automatic Configuration Script : $acs"
}
else {
Write-Output "Automatic Configuration Script : Not Defined"
}
}
}
中找到参考
答案 4 :(得分:0)
您还可以使用netsh:
//用于Socks代理
header => 'auto'
//使用凭据
netsh winhttp set proxy proxy-server="socks=10.0.0.254:1080" bypass-list="localhost"
//重置代理
netsh winhttp set proxy proxy-server="http=aUser:aPass@10.0.0.254;aUser:aPass@https=10.0.0.254;" bypass-list="localhost"
答案 5 :(得分:0)
这是一个将近 11 年前的问题,但是...
如果有一些 Windows 10 用户需要在 cmd 上完成此操作
reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v proxyEnable /t REG_DWORD /d 1 /f
reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v proxyServer /t REG_SZ /d socks=localhost:4444 /f
如果您选中复选框,则工作已完成。