yellowcake
Goto Top

Regedit - Proxy Einstellung in HKEY USERS

Hey

ich habe ein Problem:

Wir haben ein kleines Tool in AutoIT programmiert das Checkt ob die Lokale Domain erreichbar ist per Ping auf ABC.local. Wenn ja dann wird die Proxy einstellung aktiviert, wenn dann wird den Proxy deaktiviert.

Dafür lieben uns alle Mitarbeiter die mit Laptops arbeiten.

Unter Win 7 hat dies hier wunderbar funktioniert:
$var = Ping("ABC.local",1000)  
If @error = 0 Then
  RegWrite("HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings","ProxyEnable","REG_DWORD","1")  
  MsgBox (0, "Status","Proxy an",1.3)  

Else
  RegWrite("HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings","ProxyEnable","REG_DWORD","0")  
  MsgBox (0,"Status","Proxy aus",1.3)  
EndIf
wobei die MsgBox hier nur zum testen drin ist, wie man sieht ist die nicht aktiv...

jetzt habe ich unter Windows 10 - 1909 aber das problem das die Proxy Einstellung nicht mehr in:

HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings 

sondern in

Computer\HKEY_USERS\S-x-x-xx-xxxxxxxxx-xxxxxxxxxx-xxxxxxxxx-xxxx\Software\Microsoft\Windows\CurrentVersion\Internet Settings

liegen...
Jetzt weiß ich gerade nicht wie ich meinem tool beibringen soll es soll immer in den Aktuellen S-x-... gehen soll. Gibt eine möglichkeit mittels sonderzeichen wie man z.b. %appdata% ?
also so was wie

Computer\HKEY_USERS\**%User%**\Software\Microsoft\Windows\CurrentVersion\Internet Settings

Content-ID: 560453

Url: https://administrator.de/forum/regedit-proxy-einstellung-in-hkey-users-560453.html

Ausgedruckt am: 22.12.2024 um 18:12 Uhr

SlainteMhath
SlainteMhath 24.03.2020 um 11:33:38 Uhr
Goto Top
Moin,

auch unter Win10 1909 entspricht HKCU dem aktuell angemeldeten User. Evtl. läuft dein Tool im falschen Usercontext? Wie/wann läuft denn das Teil?

lg,
Slainte
manuel-r
manuel-r 24.03.2020 um 11:36:13 Uhr
Goto Top
Hallo

Wie wäre es mit
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings
Dort ist für den angemeldeten Benutzer alles was du suchst.

Manuel
Yellowcake
Yellowcake 24.03.2020 um 11:51:38 Uhr
Goto Top
das läuft immer wenn ein User angemeldet ist und ein Letzwerk verbunden oder getrennt wird. dann wird die kleine exe gesartet und dann wird der wert entsprechend gesetzt.

jetzt stelle ich nur fest wenn ich bei meinem Windows 10 - 1909 in die regedit schaue das der wert nicht mehr in
HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings
sondern in
HKEY_USERS\S-x-x-xx-xxxxxxxxx-xxxxxxxxxx-xxxxxxxxx-xxxx\Software\Microsoft\Windows\CurrentVersion\Internet Settings

sich verändert ...
darum funktioniert das tool auch bei mir nicht mehr face-sad
manuel-r
manuel-r 24.03.2020 um 11:57:08 Uhr
Goto Top
das läuft immer wenn ein User angemeldet ist und ein Letzwerk verbunden oder getrennt wird. dann wird die kleine exe gesartet und dann wird der wert entsprechend gesetzt.

Und in welchem Benutzerkontext wird die EXE ausgeführt? Mit dem angemeldeten Benutzer oder ein anderer?
Yellowcake
Yellowcake 24.03.2020 um 12:00:23 Uhr
Goto Top
der Task läuft auf den Aktuellen User:
%LogonDomain%\%LogonUser%
Yellowcake
Yellowcake 24.03.2020 um 12:03:42 Uhr
Goto Top
Wenn ich per Hand die einstellung in Windows setze, dann ändert sich der wert in der regedit nur in
HKEY_USERS\S-x-x-xx-xxxxxxxxx-xxxxxxxxxx-xxxxxxxxx-xxxx\Software\Microsoft\Windows\CurrentVersion\Internet Settings
und nicht in
HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings

wenn ich über die regedit den wert in
HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings
verändere passiert in Windows nichts, ändere ich es aber in
HKEY_USERS\S-x-x-xx-xxxxxxxxx-xxxxxxxxxx-xxxxxxxxx-xxxx\Software\Microsoft\Windows\CurrentVersion\Internet Settings
dann ändert sich der wert auch in windows (also in der Windows oberfläche )
manuel-r
manuel-r 24.03.2020 um 12:04:05 Uhr
Goto Top
Hast du das auch mal verifiziert indem du %LogonDomain%\%LogonUser% mal in einer MsgBox ausgeben lässt?
emeriks
emeriks 24.03.2020 um 12:05:05 Uhr
Goto Top
@Yellowcake
Du trickst Dich selbst aus.

Für einen Benutzer mit der SID "S-bla-bla-bla" sind die Schlüssel
HKEY_CURRENT_USER
und
HKEY_USERS\S-bla-bla-bla
der selbe Schlüssel.
Der Weg über HKEY_USERS kann von z.B. LocalSystem oder einen Administrator genutzt werden, um in einem Profil eines anderen lokal registrierten Benutzers Änderungen vorzunehmen.
Läuft das Script also im Kontext des angemeldeten Benutzers, dann kann es in beiden schreiben. HKCU ist nur einfacher.
Läuft das Script aber in einem anderen Kontext, z.B. einem Admin-Konto oder dem von SYSTEM, dann muss es im HKEY_USERS schreiben. Das einfachste wäre dann, alle Schlüssel unterhalb von HKEY_USERS abzufragen und in allen ohne "_Classes" am Ende und mit min. 4x "-" drin die entsprechende Änderung vorzunehmen.
manuel-r
manuel-r 24.03.2020 um 12:10:16 Uhr
Goto Top
Wenn es nicht anders geht, weil bspw. der Kontext nicht stimmt, kannst du auch über
Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList
die SID zum richtigen Benutzer auflösen und dann entsprechen nach
HKEY_USERS\S-x-x-xx-xxxxxxxxx-xxxxxxxxxx-xxxxxxxxx-xxxx\Software\Microsoft\Windows\CurrentVersion\Internet Settings
schreiben
Yellowcake
Yellowcake 24.03.2020 um 13:08:01 Uhr
Goto Top
was ich nicht verstehe ist, das in HKEY_CURRENT_USER ja funktionieren müsste wenn ich es selber per Hand umstelle, dies aber in HKEY_USERS\S-bla-bla-bla geschrieben wird und auch nur dort ausgelesen wird ...

das ist was ich aktuell nicht verstehe
Yellowcake
Yellowcake 24.03.2020 um 13:33:45 Uhr
Goto Top
ok ich habe den fehler gefunden face-smile anderes auslesenverhalten von Windows 10 zu Windows 7 face-smile
Wenn ich in KEY_CURRENT_USER den wert setze, dann passiert dies auch, nur wird es Angezeigt wenn man die ganzen Internetoptionen neu startet. Bei Win 7 reichte wenn man die Optionssiete neu aufruft.

um sonst Panik gehabt face-smile

danke an euch alle ;)