2 * PROJECT: ReactOS Service Control Manager
3 * LICENSE: GPL - See COPYING in the top level directory
4 * FILE: base/system/services/controlset.c
5 * PURPOSE: Control Set Management
6 * COPYRIGHT: Copyright 2012 Eric Kohl
10 /* INCLUDES *****************************************************************/
18 /* GLOBALS *******************************************************************/
20 static DWORD dwCurrentControlSet
;
21 static DWORD dwDefaultControlSet
;
22 static DWORD dwFailedControlSet
;
23 static DWORD dwLastKnownGoodControlSet
;
26 /* FUNCTIONS *****************************************************************/
29 ScmGetControlSetValues(VOID
)
36 DPRINT("ScmGetControlSetValues() called\n");
38 lError
= RegOpenKeyExW(HKEY_LOCAL_MACHINE
,
43 if (lError
!= ERROR_SUCCESS
)
46 dwSize
= sizeof(DWORD
);
47 lError
= RegQueryValueExW(hSelectKey
,
51 (LPBYTE
)&dwCurrentControlSet
,
53 if (lError
!= ERROR_SUCCESS
)
55 dwCurrentControlSet
= 0;
58 dwSize
= sizeof(DWORD
);
59 lError
= RegQueryValueExW(hSelectKey
,
63 (LPBYTE
)&dwDefaultControlSet
,
65 if (lError
!= ERROR_SUCCESS
)
67 dwDefaultControlSet
= 0;
70 dwSize
= sizeof(DWORD
);
71 lError
= RegQueryValueExW(hSelectKey
,
75 (LPBYTE
)&dwFailedControlSet
,
77 if (lError
!= ERROR_SUCCESS
)
79 dwFailedControlSet
= 0;
82 dwSize
= sizeof(DWORD
);
83 lError
= RegQueryValueExW(hSelectKey
,
87 (LPBYTE
)&dwLastKnownGoodControlSet
,
89 if (lError
!= ERROR_SUCCESS
)
91 dwLastKnownGoodControlSet
= 0;
94 RegCloseKey(hSelectKey
);
96 DPRINT("ControlSets:\n");
97 DPRINT("Current: %lu\n", dwCurrentControlSet
);
98 DPRINT("Default: %lu\n", dwDefaultControlSet
);
99 DPRINT("Failed: %lu\n", dwFailedControlSet
);
100 DPRINT("LastKnownGood: %lu\n", dwLastKnownGoodControlSet
);