예제 #1
0
 public static void Clear()
 {
     if (NativeImport.GetConsoleWindow() != IntPtr.Zero)
     {
         Console.Clear();
     }
     else
     {
         MessageBox.Show(null, "Error: There is no debug console running!", $"{Assembly.GetExecutingAssembly().GetName().Name}");
         return;
     }
 }
예제 #2
0
 public static IntPtr GetConsoleHandle()
 {
     if (NativeImport.GetConsoleWindow() != IntPtr.Zero)
     {
         return(NativeImport.GetConsoleWindow());
     }
     else
     {
         MessageBox.Show(null, @"Error: There is no debug console running!",
                         $@"{Assembly.GetExecutingAssembly().GetName().Name}");
         return(IntPtr.Zero);
     }
 }
예제 #3
0
 public static void HideConsole()
 {
     if (NativeImport.GetConsoleWindow() != IntPtr.Zero)
     {
         var handle = NativeImport.GetConsoleWindow();
         NativeImport.ShowWindow(handle, NativeImport.SW_HIDE);
     }
     else
     {
         MessageBox.Show(null, "Error: There is no debug console running!", $"{Assembly.GetExecutingAssembly().GetName().Name}");
         return;
     }
 }
예제 #4
0
        public static string Log(string format, LogLevel formatColor = LogLevel.Debug)
        {
            if (NativeImport.GetConsoleWindow() != IntPtr.Zero)
            {
                var consoleColour = Console.ForegroundColor;

                switch (formatColor)
                {
                case LogLevel.Debug:
                    consoleColour = ConsoleColor.Cyan;
                    break;

                case LogLevel.Error:
                    consoleColour = ConsoleColor.Red;
                    break;

                case LogLevel.Warn:
                    consoleColour = ConsoleColor.Magenta;
                    break;

                case LogLevel.Info:
                    break;

                default:
                    // Default color
                    break;
                }

                Console.ForegroundColor = consoleColour;

                if (string.IsNullOrEmpty(format))
                {
                    Console.WriteLine(
                        $@"[{Assembly.GetExecutingAssembly().GetName().Name}] StringNullOrEmpty Occured at LogService.Log");
                    return
                        ($"[{Assembly.GetExecutingAssembly().GetName().Name}] StringNullOrEmpty Occured at LogService.Log");
                }

                Console.WriteLine(
                    $@"[{DateTime.Now:h:mm:ss tt} - {Assembly.GetExecutingAssembly().GetName().Name}]: {format}");
                return($"[{DateTime.Now:h:mm:ss tt} - {Assembly.GetExecutingAssembly().GetName().Name}]: {format}");
            }
            else
            {
                MessageBox.Show(null, @"Error: There is no debug console running!",
                                $@"{Assembly.GetExecutingAssembly().GetName().Name}");
                return("Error: There is no debug console running!");
            }
        }