ExitWindowsEx
The ExitWindowsEx
function either logs off, shuts down, or shuts down and restarts the system.
BOOL ExitWindowsEx(
UINT uFlags, |
// shutdown
operation |
DWORD dwReserved |
// reserved |
); |
|
Parameters
uFlags
Specifies the
type of shutdown. This parameter must be some combination of the following
values:
Value |
Meaning |
EWX_FORCE |
Forces
processes to terminate. When this flag is set, Windows does not send the
messages WM_QUERYENDSESSION and WM_ENDSESSION to the applications currently
running in the system. This can cause the applications to lose data.
Therefore, you should only use this flag in an emergency. |
EWX_LOGOFF |
Shuts down
all processes running in the security context of the process that called the ExitWindowsEx
function. Then it logs the user off. |
EWX_POWEROFF |
Shuts down
the system and turns off the power. The system must support the power-off
feature. Windows
NT: The calling process must have
the SE_SHUTDOWN_NAME privilege. For more information, see the following
Remarks section. Windows
95: Security privileges are not supported
or required. |
EWX_REBOOT |
Shuts down
the system and then restarts the system. Windows
NT: The calling process must have
the SE_SHUTDOWN_NAME privilege. For more information, see the following
Remarks section. Windows
95: Security privileges are not
supported or required. |
EWX_SHUTDOWN |
Shuts down
the system to a point at which it is safe to turn off the power. All file buffers
have been flushed to disk, and all running processes have stopped. Windows
NT: The calling process must have
the SE_SHUTDOWN_NAME privilege. For more information, see the following
Remarks section. Windows
95: Security privileges are not
supported or required. |
dwReserved
Reserved;
this parameter is ignored.
Return Values
If the
function succeeds, the return value is nonzero.
If the
function fails, the return value is zero. To get extended error information,
call GetLastError
Remarks
The ExitWindowsEx
function returns as soon as it has initiated the shutdown. The shutdown or
logoff then proceeds asynchronously.
During a
shutdown or log-off operation, applications that are shut down are allowed a
specific amount of time to respond to the shutdown request. If the time
expires, Windows displays a dialog box that allows the user to forcibly shut
down the application, to retry the shutdown, or to cancel the shutdown request.
If the EWX_FORCE value is specified, Windows always forces applications to
close and does not display the dialog box.
The ExitWindowsEx
function sends a separate notification message, CTRL_SHUTDOWN_EVENT or
CTRL_LOGOFF_EVENT as the situation warrants, to console processes. A console
process routes these messages to its HandlerRoutine functions, which are
added and removed by calls to the SetConsoleCtrlHandler function. ExitWindowsEx
sends these notification messages asynchronously; thus, an application cannot
assume that the console notification messages have been handled when a call to ExitWindowsEx
returns.
Windows
NT: To shut down or restart the
system, the calling process must use the AdjustTokenPrivileges
Windows
95: Security privileges are not
supported or required.
See Also