22

If I edit Proxy Settings through the Control Panel, the settings are stored in HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ProxyEnable and ...\ProxyServer. These settings are of course not used when running as a service under LOCAL SYSTEM.

So I tried setting ProxyEnable and ProxyServer under HKEY_USERS\S-1-5-18\... (as well as HKEY_USERS\.DEFAULT\... and all the other users on the system), but that does not work.

How do I set the proxy settings for the LOCAL SYSTEM user?

21

Figured it out myself:

It is actually the value in Software\Microsoft\Windows\CurrentVersion\Internet Settings\Connections\DefaultConnectionSettings that is used.

Since that is not easily modified, you can modify the proxy settings for a user, export the registry key, modify the path in the exported file to HKEY_USERS\S-1-5-18 and reimport it.

  • This solved my problem, many thanks! I ended up writing a Java class to manipulate the DefaultConnectionSettings hex string, as I needed to set the proxy programmatically. – Andrew Swan Nov 29 '10 at 4:30
  • Can this work if authentication is required? – Raúl Salinas-Monteagudo May 7 at 7:15
11

Copy IE proxy settings to WinHttp:

  • Run cmd as administrator:

    • netsh winhttp show proxy

    • netsh winhttp import proxy source =ie

  • 2
    One liner: netsh winhttp import proxy source =ie – Vadzim May 22 '17 at 7:28
5

Another way, albeit much messier, is to use psexec to open a command prompt running as LOCAL SYSTEM, then from that open iexplore.exe, modify the settings appropriately.

  • PsExec.exe -i -s regedit /s "%~dp0Internet Settings.reg" – Vadzim May 22 '17 at 7:26
1

You might want to try using ProxyCFG.EXE, which sets the proxy for any WinHTTP calls.

1

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

Reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v "ProxyServer" /t REG_SZ /d "http://procycorp.bac:80" /f

  • 1
    Does that actually work now? 7 years ago when I last tried this, it just changed the values in the registry, but you had to change Connections\DefaultConnectionSettings to actually get Windows to use the procy server. – Rasmus Faber Oct 31 '15 at 6:29
  • This sets the current user (CU in HKCU), so not the local system user. – Ralph Bolton Jan 17 at 14:45
1

The Same thing can be done much easier in this way-

& C:\windows\System32\bitsadmin.exe /Util /SetIEProxy LocalSystem Manual_proxy http://<proxyserver>:<proxy port> "<Any bypasses to be added>"

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.