// A private static handler function in the MyApp class. static Boolean Handler(MyWin32.CtrlTypes CtrlType) { String message = "This message should never be seen!"; // A switch to handle the event type. switch (CtrlType) { case MyWin32.CtrlTypes.CTRL_C_EVENT: message = "A CTRL_C_EVENT was raised by the user."; break; case MyWin32.CtrlTypes.CTRL_BREAK_EVENT: message = "A CTRL_BREAK_EVENT was raised by the user."; break; case MyWin32.CtrlTypes.CTRL_CLOSE_EVENT: message = "A CTRL_CLOSE_EVENT was raised by the user."; break; case MyWin32.CtrlTypes.CTRL_LOGOFF_EVENT: message = "A CTRL_LOGOFF_EVENT was raised by the user."; break; case MyWin32.CtrlTypes.CTRL_SHUTDOWN_EVENT: message = "A CTRL_SHUTDOWN_EVENT was raised by the user."; break; } // Use interop to display a message for the type of event. Console.WriteLine(message); return(true); }
} // end enum CtrlTypes // A private static handler function. static public Boolean Handler(MyWin32.CtrlTypes CtrlType) { string message = string.Empty; // A switch to handle the event type. switch (CtrlType) { case MyWin32.CtrlTypes.CTRL_C_EVENT: case MyWin32.CtrlTypes.CTRL_BREAK_EVENT: case MyWin32.CtrlTypes.CTRL_CLOSE_EVENT: case MyWin32.CtrlTypes.CTRL_LOGOFF_EVENT: case MyWin32.CtrlTypes.CTRL_SHUTDOWN_EVENT: message = "Stop execution, since CTRL command!"; Console.EndEvent.Set(); Console.End = true; break; } // end switch // Use interop to display a message for the type of event. System.Console.WriteLine(message); return(true); } // end Handler