No Windows 7, como alterar as configurações de proxy da linha de comando?

41

Como faço para alterar as configurações de proxy na linha de comando do Windows 7?

Não estou falando apenas do http_proxy . Eu preciso definir configurações de proxy de todo o sistema (aquelas na configuração de propriedades da Internet). Como eu faço isso?

    
por prongs 02.05.2012 / 18:08

6 respostas

14

Você precisará configurar um script de registro que fará as alterações normalmente feitas por meio do Painel de Controle e mesclá-lo para ativar o proxy. Você também precisaria de um script de registro "desfazer" para desabilitar as alterações.

No meu caso, eu tenho dois scripts, enable.reg e disable.reg:

Ativar proxy:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings]
"AutoConfigURL"="http://10.10.10.1/autoproxy/proxy.pac"

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Connections]
"DefaultConnectionSettings"=hex:16,00,00,00,05,02,00,00,0d,00,00,00,0e,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
"SavedLegacySettings"=hex:36,00,00,00,46,1a,00,00,0d,00,00,00,0e,00,00,00,32,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00

Desativar proxy:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings]
"AutoConfigURL"=-

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Connections]
"DefaultConnectionSettings"=hex:16,00,00,00,05,02,00,00,0d,00,00,00,0e,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
"SavedLegacySettings"=hex:36,00,00,00,46,1a,00,00,0d,00,00,00,0e,00,00,00,32,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00

No script "desativar", o =- no final do AutoConfigURL na verdade exclui a chave do registro.

Observe que os valores acima são modificados para os propósitos desta resposta. Os valores hexadecimais reais são muito mais longos.

Para usar esses scripts, eu tinha um arquivo de lote para cada um, parecido com isto:

@echo off
start /min reg import C:\Path\To\Registry\File\enable_proxy.reg

Isso é totalmente viável na linha de comando.

    
por 02.05.2012 / 19:10
56

Solução simples e funcional recuperada do link

Comando para ativar o uso de proxy:

reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" ^
    /v ProxyEnable /t REG_DWORD /d 1 /f

Comando para desativar o uso de proxy:

reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" ^
    /v ProxyEnable /t REG_DWORD /d 0 /f

Comando para alterar o endereço do proxy:

reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" ^
    /v ProxyServer /t REG_SZ /d proxyserveraddress:proxyport /f

Eu adicionei continuação de linha (^) para melhorar a legibilidade. Além disso, neste caso, é mais como uma configuração por usuário do que uma configuração de todo o sistema.

    
por 29.08.2012 / 12:57
26

NetSh para o resgate!

NetSh winhttp set proxy deve ser útil. Aqui estão os comandos:

netsh winhttp set proxy myproxy

netsh winhttp set proxy myproxy:80 "<local>bar"

netsh winhttp set proxy proxy-server="http=myproxy;https=sproxy:88" bypass-list="*.contoso.com"

    
por 02.05.2012 / 21:56
2

Crie um arquivo em lotes e cole o conteúdo a seguir (ele alternará o estado do Proxy),

@echo off

FOR /F "tokens=2* delims=    " %%A IN ('REG QUERY "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable') DO SET currentProxy=%%B
rem ECHO currentProxy=%currentProxy%

if %currentProxy%==0x1 (
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /t REG_DWORD /d 0 /f
echo Proxy Disabled
) else (
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /t REG_DWORD /d 1 /f
echo Proxy Enabled
  )

pause
    
por 14.09.2012 / 15:27
1

Eu fiz isso em C #, mas o philosphy é o mesmo, escrevendo no registro, então as instruções a seguir podem ser extrapoladas para o comando line. Deve ser feito três coisas:

  1. Escreva para o Registro "HKCU \ Software \ Microsoft \ Windows \ CurrentVersion \ Configurações da Internet", em ProxyEnable: 1 para ativar, 0 para desativar

  2. Escreva para o Registro "HKCU \ Software \ Microsoft \ Windows \ Configuração da Internet \ CurrentVersion", em ProxyServer: xxx.xxx.xxx.xxxx: yyyy (xxx ... é o IP, yy .. é o port)

  3. Depois de executar as etapas 1 e 2, você terá escrito para registrar a ativação do proxy e do IP e da porta, mas se você abrir o navegador, perceberá que não é suficiente, você ainda não poderá navegar. A terceira etapa consiste em alterar o registro em relação às configurações de conexões:

"Software \ Microsoft \ Windows \ CurrentVersion \ Configurações da Internet \ Conexões" em "DefaultConnectionSettings".

Observe que, embora (pelo menos para W7) haja 204 bytes nesse registro, você só precisa modificar o byte 8 (9, já que o byte 0 é o primeiro). O valor do byte 8 não contém apenas informações sobre ativação / desativação de proxy, mas também sobre outras funcionalidades:

        //09 when only 'Automatically detect settings' is enabled 
        //03 when only 'Use a proxy server for your LAN' is enabled
        //0B when both are enabled
        //05 when only 'Use automatic configuration script' is enabled
        //0D when 'Automatically detect settings' and 'Use automatic      configuration script' are enabled
        //07 when 'Use a proxy server for your LAN' and 'Use automatic configuration script' are enabled
        //0F when all the three are enabled. 
        //01 when none of them are enabled. 

No meu caso, o 'Detectar automaticamente as configurações' está sempre ativado, então eu mudo o valor do byte 8 de 09 para 0B e vice-versa para ativar e desativar o proxy.

    
por 05.12.2015 / 11:02
-3

Espero que esteja apontando na direção correta aqui, mas se você estiver tentando acessar as configurações de proxy por meio de "Opções da Internet", basta abrir o menu iniciar e digitar "opção internet" (qualquer configuração ou aplicativo que você possa localizar desta forma também exemplo "proxy"). Você deve reconhecer este menu e poder adicionar as configurações necessárias.

    
por 02.05.2012 / 18:18