Windows 7 Disabilita Proxy tramite cmd e attiva


1

Windows 7 (64-bit) Disattiva Proxy via cmd - e attiva?

Ho trovato la chiave di registro corretta per cambiare e ho il codice per cambiarlo.

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

Trovato via

gpresults /h "%userprofile%\desktop\RSPO.html"

L'esecuzione di "reg aggiungi" cambia la chiave di reg, la stessa chiave che cambia, quando apro IE (come amministratore) e disattiva manualmente le impostazioni del proxy LAN.

Tuttavia, quando lo faccio manualmente, si verifica l'effetto desiderato - Non ho più problemi con il proxy. Ma tramite il mio script cmd, la chiave cambia ma ho ancora problemi con il proxy. Quando apro le impostazioni del proxy LAN in IE, è ancora abilitato.

Come posso cambiare la chiave di reg e metterla in atto?

Ho provato a cambiare un mazzo di chiavi di registro ...

Script attuale ...

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

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

Ho provato a eseguire lo script con privilegi amministrativi o qualche comando di elevazione di fronte ad esso? I diritti di accesso a quella chiave del Registro di sistema potrebbero impedirne la modifica senza diritti amministrativi. È possibile controllare i diritti di accesso navigando verso la chiave in regedit e facendo clic con il tasto destro del mouse sulla voce, allo stesso modo in cui funziona per i file in Windows Explorer.
Johannes H.

Sto eseguendo cmd come amministratore. Dopo aver eseguito lo script, viene visualizzato "L'operazione è stata completata correttamente". E la chiave di registro è cambiata.
mrdnk

Puoi modificare la tua domanda per includere la posizione attuale del registro che stai modificando?
Ƭᴇcʜιᴇ007

Ci sei, scusa, se Stack Exchange ha effettuato il login su un altro computer.
mrdnk

Risposte:


1

Sfortunatamente, non esiste un modo semplice. Come hai notato, ti stai perdendo la magia Comando "leggi queste impostazioni ora" :

InternetSetOption(NULL, INTERNET_OPTION_SETTINGS_CHANGED, NULL, NULL)
InternetSetOption(NULL, INTERNET_OPTION_REFRESH, NULL, NULL)

Naturalmente, non puoi semplicemente chiamare una funzione C. cmd. C'è, tuttavia, un (relativamente) vitale modo di farlo con PowerShell :

function Reload-InternetOptions
{
  $signature = @'
[DllImport("wininet.dll", SetLastError = true, CharSet=CharSet.Auto)]
public static extern bool InternetSetOption(IntPtr hInternet, int
dwOption, IntPtr lpBuffer, int dwBufferLength);
'@
  $interopHelper = Add-Type -MemberDefinition $signature -Name MyInteropHelper -PassThru

  $INTERNET_OPTION_SETTINGS_CHANGED = 39
  $INTERNET_OPTION_REFRESH = 37

  $result1 = $interopHelper::InternetSetOption(0, $INTERNET_OPTION_SETTINGS_CHANGED, 0, 0)
  $result2 = $interopHelper::InternetSetOption(0, $INTERNET_OPTION_REFRESH, 0, 0)

  $result1 -and $result2
}

Basta invocarlo in questo modo: Reload-InternetOptions. Ritornerà True quando ha successo.

Tieni presente che questo metodo crea dinamicamente alcune cose ogni volta che lo esegui. Non può essere scaricato da PowerShell e continuerà ad accumularsi finché non si esce dal processo PowerShell che ha eseguito il metodo.


0

Le impostazioni di IE sono per utente, quindi penso che stiate semplicemente prendendo di mira la chiave di registro sbagliata.

Ad esempio, per disattivare la casella di controllo del proxy su tutto il dominio, utilizziamo uno script di accesso per disattivarlo qui:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ProxyEnable


Questo è quello per cui inizialmente sono andato a trovarlo nei gpresults ... Policy Setting Winning GPO Make proxy settings per-machine (rather than per-user) Enabled TMG Proxy Settings Policy
mrdnk

E... Registry item (Key path: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Internet Settings, Value name: ProxyEnable)
mrdnk

Ok, e come dici tu, non funziona. ;) Funziona come vuoi se usi la chiave HKCU?
Ƭᴇcʜιᴇ007

Ho provato a cambiare un mazzo di chiavi, vedi modifica.
mrdnk
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.