setconsolectrlhandler (kernel32)
Last changed: -162.156.70.71

.
Summary

C# Signature:

[DllImport("kernel32.dll")]
static extern bool SetConsoleCtrlHandler(ConsoleCtrlDelegate HandlerRoutine,
   bool Add);

C# User-Defined Types:

// Delegate type to be used as the Handler Routine for SCCH
delegate Boolean ConsoleCtrlDelegate(CtrlTypes CtrlType);

// Enumerated type for the control messages sent to the handler routine
enum CtrlTypes : uint {
    CTRL_C_EVENT = 0,
    CTRL_BREAK_EVENT,
    CTRL_CLOSE_EVENT,  
    CTRL_LOGOFF_EVENT = 5,
    CTRL_SHUTDOWN_EVENT
}

VB.NET Signature:

Private Declare Function SetConsoleCtrlHandler Lib "kernel32" (Handler As ConsoleCtrlDelegate, Add As Boolean) As Boolean

VB.NET User-Defined Types:

Private Enum CtrlTypes As UInteger
   CTRL_C_EVENT = 0
   CTRL_BREAK_EVENT
   CTRL_CLOSE_EVENT
   CTRL_LOGOFF_EVENT = 5
   CTRL_SHUTDOWN_EVENT
End Enum

Private Delegate Function ConsoleCtrlDelegate(CtrlType As CtrlTypes) As Boolean

Notes:

None.

Tips & Tricks:

Please add some!

Alternative Managed API:

Do you know one? Please contribute it!

Documentation