-
// Fonction pour redemarrer Windows avec les MFC
-
-
void RestartWindows(void)
-
{
-
// Declaration
-
HANDLE hToken;
-
TOKEN_PRIVILEGES tkp;
-
-
// Get a token for this process.
-
OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken);
-
-
-
// Get the LUID for the shutdown privilege.
-
LookupPrivilegeValue(NULL, SE_SHUTDOWN_NAME,&tkp.Privileges[0].Luid);
-
-
tkp.PrivilegeCount = 1; // one privilege to set
-
tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
-
-
// Get the shutdown privilege for this process.
-
AdjustTokenPrivileges(hToken, FALSE, &tkp, 0, (PTOKEN_PRIVILEGES)NULL, 0);
-
-
-
// Shut down the system and force all applications to close.
-
ExitWindowsEx(EWX_REBOOT| EWX_FORCE, 0);
-
}