注销
ExitWindows 函数注销当前用户。 还可以使用 EXW_LOGOFF 标志调用 ExitWindowsEx 函数。
默认情况下,当应用程序使用 ExitWindows 或 ExitWindowsEx 注销时,系统会将 WM_QUERYENDSESSION 消息发送到每个窗口。 应用程序在收到此消息时,同意通过返回 TRUE 来终止。 如果任何应用程序在处理此消息时返回 FALSE ,则会取消注销操作。 如果应用程序处理 WM_QUERYENDSESSION 消息,则可以允许用户取消注销操作,即使其他应用程序或系统发起了结束会话请求。 有关示例,请参阅 如何注销当前用户。
当应用程序为 WM_QUERYENDSESSION 返回 TRUE 时,它将接收WM_ENDSESSION消息,并且无论其他应用程序如何响应WM_QUERYENDSESSION消息,它都会终止。
若要强制所有应用程序终止,请使用 ExitWindowsEx 并指定EXW_FORCE标志。 这可以防止系统发送 WM_QUERYENDSESSION 消息。
在注销操作期间,系统还会向每个进程发送CTRL_LOGOFF_EVENT控制信号。 控制台应用程序可以注册 HandlerRoutine 来处理这些消息。
如果名为 ExitWindowsEx 的进程在交互式用户的登录会话中运行,则登录会话中的所有进程都会终止。 如果调用 ExitWindowsEx 的进程位于其他登录会话中,则仅发出通知;不会终止任何进程。
相关主题