Windows Beenden
-
Hallo,
ich hab Probleme den Code zu verstehen und in der Hilfe bzw. dem Forum hier bekomme ich wenig herraus. Kann mir jemand von euch helfen. Evtl. ein paar nützliche Kommentare einfügen?HANDLE token; TOKEN_PRIVILEGES tokenpriv; // Token für diesen Prozess holen if (OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &token)==0) { ShowMessage("Fehler beim OpenProcessToken"); return; } // LUID für die Shutdown Privilege holen LookupPrivilegeValue(NULL, SE_SHUTDOWN_NAME, &tokenpriv.Privileges[0].Luid); tokenpriv.PrivilegeCount=1; tokenpriv.Privileges[0].Attributes=SE_PRIVILEGE_ENABLED; // Shutdown privilege für diesen Prozess setzen if(AdjustTokenPrivileges(token, false, &tokenpriv, 0, (PTOKEN_PRIVILEGES)NULL, 0)==NULL) { ShowMessage("Fehler bei AdjustTokenPrivileges"); return; } // Windows beenden und Rechner ausschalten if(ExitWindowsEx(EWX_LOGOFF | EWX_POWEROFF, NULL)==NULL) { ShowMessage("Fehler beim ExitWindowsEx"); return; }
-
Das gehört nach Win-API