Hmm..
Und wo ist nun das Problem?
HKLM ist immer bei beiden Anmeldungen gleich (solange auf dem selben PC ausgeführt).
Wenn Du die Speicherroutinen in die Registry aufteilst, dann sollte es eigentlich klappen, nach dem Motto:
Normaler User
-> Speichern in
HKCU
Admin anfordern
-> Speichern in
HKLM
wieder zurück (zum normalen User)
-> Speichern/lesen in
HKCU, lesen in
HKLM
Ich habe einige Dienste erstellt, welche gleichzeitig mit verschiedenen Anmeldungen laufen.
- Der Dienst selber als LocalSystem
- Der Kommunikations- Thread als User A
- Ein spezieller PrintSpooler als User B (Dieser hatte die Netzwerk-Drucker gemappt)
Geh hin und lagere das 'speichern' in
HKLM in eine Funktion aus, welche mit LogonUser, LoadUserProfile, ImpersonateLoggedOnUser einen Admin anmeldet und dann das Speichern durchführt. Anschließend dann mit RevertToSelf und UnloadUserProfile wieder zurück zum normalen User.