Biblioteki C/C++
ExitWindowsEx
[funkcja] Wyłącza komputer lub wylogowuje użytkownika.Składnia
#include <windows.h>
WINUSERAPI BOOL WINAPI ExitWindowsEx(
UINT uFlags,
DWORD dwReason
);
Argumenty
Zwracana wartość
Jeśli wywołanie funkcji się powiedzie, zwraca ona wartość niezerową. W przeciwnym wypadku zwraca 0. Aby uzyskać szczegółowe informacje o błędzie, użyj funkcji
GetLastError.
Opis szczegółowy
Użycie funkcji
ExitWindowsEx wymaga uzyskania specjalnego przywileju. Oto jak go uzyskać:
HANDLE hToken;
TOKEN_PRIVILEGES tkp;
OpenProcessToken( GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, & hToken );
LookupPrivilegeValue( NULL, SE_SHUTDOWN_NAME, & tkp.Privileges[ 0 ].Luid );
tkp.PrivilegeCount = 1;
tkp.Privileges[ 0 ].Attributes = SE_PRIVILEGE_ENABLED;
AdjustTokenPrivileges( hToken, false, & tkp, 0, NULL, 0 );
if( GetLastError() != ERROR_SUCCESS )
{
}
else
{
}
Po czym można już swobodnie korzystać z
ExitWindowsEx. W naszym przykładzie zrestartujemy komputer:
ExitWindowsEx( EWX_REBOOT, 0 );
Wymagania
Linki zewnętrzne
Wszystkie teksty są chronione prawami autorskimi. Kopiowanie lub rozpowszechnianie treści poza niniejszym serwisem
jest zabronione.
Powyższe ograniczenie nie dotyczy autora opracowania, któremu przysługuje prawo do rozpowszechniania własnego tekstu wedle własnego uznania.