Platform SDK: DLLs, Processes, and Threads

SetProcessShutdownParameters

The SetProcessShutdownParameters function sets shutdown parameters for the currently calling process. This function sets a shutdown order for a process relative to the other processes in the system.

BOOL SetProcessShutdownParameters(
  DWORD dwLevel,  // shutdown priority
  DWORD dwFlags   // shutdown options
);

Parameters

dwLevel
[in] Specifies the shutdown priority for a process relative to other processes in the system. The system shuts down processes from high dwLevel values to low. The highest and lowest shutdown priorities are reserved for system components. This parameter must be in the following range of values.
Value Meaning
000–0FF System reserved last shutdown range.
100–1FF Application reserved last shutdown range.
200–2FF Application reserved "in between" shutdown range.
300–3FF Application reserved first shutdown range.
400–4FF System reserved first shutdown range.

All processes start at shutdown level 0x280.

dwFlags
[in] This parameter can be the following value.
Value Meaning
SHUTDOWN_NORETRY Specifies whether to retry the shutdown if the specified time-out period expires. If this flag is specified, the system terminates the process without displaying a retry dialog box for the user.

Return Values

If the function is succeeds, the return value is nonzero.

If the function fails, the return value is zero. To get extended error information, call GetLastError.

Remarks

Applications running in the system security context do not get shut down by the operating system. They get notified of shutdown or logoff through the callback function installable via SetConsoleCtrlHandler. They also get notified in the order specified by the dwLevel parameter.

Requirements

  Windows NT/2000: Requires Windows NT 3.1 or later.
  Windows 95/98: Unsupported.
  Header: Declared in Winbase.h; include Windows.h.
  Library: Use Kernel32.lib.

See Also

Processes and Threads Overview, Process and Thread Functions, GetProcessShutdownParameters, SetConsoleCtrlHandler