Si je modifie les paramètres de proxy via le panneau de configuration, les paramètres sont stockés dans HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ProxyEnable
et ...\ProxyServer
. Ces paramètres ne sont bien sûr pas utilisés lors de l'exécution en tant que service sous LOCAL SYSTEM
.
J'ai donc essayé de définir ProxyEnable
et ProxyServer
sous HKEY_USERS\S-1-5-18\...
(aussi bien que HKEY_USERS\.DEFAULT\...
et tous les autres utilisateurs du système), mais cela ne fonctionne pas.
Comment définir les paramètres de proxy pour le LOCAL SYSTEM
utilisateur?
Je l'ai compris moi-même:
Il s'agit en fait de la valeur en Software\Microsoft\Windows\CurrentVersion\Internet Settings\Connections\DefaultConnectionSettings
qui est utilisé.
Comme cela n'est pas facile à modifier, vous pouvez modifier les paramètres de proxy pour un utilisateur, exporter la clé de registre, modifier le chemin d'accès dans le fichier exporté vers HKEY_USERS\S-1-5-18
et réimportez-le.
Copiez IE paramètres proxy sur WinHttp:
Exécutez cmd
en tant qu'administrateur:
netsh winhttp show proxy
netsh winhttp import proxy source =ie
Une autre façon, bien que beaucoup plus compliquée, consiste à utiliser psexec pour ouvrir une invite de commande exécuté en tant que SYSTÈME LOCAL, puis à partir de cet iexplore.exe ouvert, modifiez les paramètres de manière appropriée.
Reg ajouter "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings"/v "ProxyEnable"/t REG_DWORD/d "0"/f
Reg ajouter "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings"/v "ProxyServer"/t REG_SZ/d " http: //procycorp.bac: 8 "/f
Vous voudrez peut-être essayer d'utiliser ProxyCFG.EXE , qui définit le proxy pour tous les appels WinHTTP.
La même chose peut être faite beaucoup plus facilement de cette façon-
& C:\windows\System32\bitsadmin.exe /Util /SetIEProxy LocalSystem Manual_proxy http://<proxyserver>:<proxy port> "<Any bypasses to be added>"