How does CurrentControlSet differ from ControlSet001 and ControlSet002?

WindowsRegistry

Windows Problem Overview


In the Windows registry, how does CurrentControlSet differ from ControlSet001 and ControlSet002? Which should be set when installing for all users?

We are trying to add an environment variable for all users. Is this correct?

HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Envinronment

Windows Solutions


Solution 1 - Windows

Yes, you only need to update the CurrentControlSet key...

ControlSet001 and ControlSet002 are alternating backups of CurrentControlSet, you don't need to update them.

Edit: As K noted, CurrentControlSet is an alternating symbolic link to either ControlSet001 or ControlSet002. The other key is kept as a backup for the Load Last Known Good Configuration boot option.

Edit 2: See Microsoft KB Article 100010: What are Control Sets? What is CurrentControlSet?
Original page link broken, see archive.org backup page instead.

Solution 2 - Windows

CurrentControlSet is technically not a "backup" as Gordon states.
It is a symbolic link to one of the ControlSets on the computer. It always points to the ControlSet that is currently loaded.

Solution 3 - Windows

Actual symbolic link match is in: HKEY_LOCAL_MACHINE\SYSTEM\Select\.

Solution 4 - Windows

ControlSet001 may be the last control set you booted with, while ControlSet002 could be what is known as the last known good control set, or the control set that last successfully booted Windows

Solution 5 - Windows

The CurrentControlSet subkey is really a pointer to one of the ControlSetXXX keys.

The most valuable and reliable control set is CurrentControlSet. If you need to modify system settings in the Registry, CurrentControlSet is the best subkey to choose because you know that it is the correct control set.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionDan HewettView Question on Stackoverflow
Solution 1 - WindowsGordon BellView Answer on Stackoverflow
Solution 2 - WindowsKhbView Answer on Stackoverflow
Solution 3 - WindowsmikeView Answer on Stackoverflow
Solution 4 - WindowsMohamed SalehView Answer on Stackoverflow
Solution 5 - WindowsjagjitView Answer on Stackoverflow