using System; using System.Collections.Generic; using System.Text; using SkylineSoft.Console; using SkylineSoft.Console.Commands; using System.Configuration; using SkylineSoft.Utils; using System.Net.Sockets; namespace SkylineSoft.Console.Demo { class Program { static void Main(string[] args) { ConsoleManager console= ConsoleManager.Instance; console.Title = "测试"; console.RegisterCommand(new CtrlCCommandDescriptor()); console.RegisterCommand(new ExitCommandDescriptor()); console.RegisterCommand(new HelpCommandDescriptor()); console.CtrlBreakEvent += new ConsoleCtrlEventHandler(Console_CtrlBreakEvent); console.CloseEvent += new ConsoleCtrlEventHandler(Console_CloseEvent); console.LogoffEvent += new ConsoleCtrlEventHandler(Console_LogoffEvent); console.ShutDowngEvent += new ConsoleCtrlEventHandler(Console_ShutDowngEvent); console.Run(); } static void Console_ShutDowngEvent(ConsoleManager sender,ConsoleCtrlEventArgs e, ref bool cancel) { ConsoleWriter.WriteLine(); ConsoleWriter.WriteLine("System shutdowning"); } static void Console_LogoffEvent(ConsoleManager sender,ConsoleCtrlEventArgs e, ref bool cancel) { ConsoleWriter.WriteLine(); ConsoleWriter.WriteLine("System logoffing"); } static void Console_CloseEvent(ConsoleManager sender,ConsoleCtrlEventArgs e, ref bool cancel) { ConsoleWriter.WriteLine(); ConsoleWriter.WriteLine("Console closing"); cancel = false; } static void Console_CtrlBreakEvent(ConsoleManager sender,ConsoleCtrlEventArgs e, ref bool cancel) { ConsoleWriter.Write("Ctrl+Break"); cancel = true; } } }