Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ GetBufferInfo() [2/2]

static global.Interop.Kernel32.CONSOLE_SCREEN_BUFFER_INFO System.ConsolePal.GetBufferInfo ( bool throwOnNoConsole,
out bool succeeded )
inlinestaticprivate

Definition at line 982 of file ConsolePal.cs.

983 {
984 succeeded = false;
985 IntPtr outputHandle = OutputHandle;
986 if (outputHandle == InvalidHandleValue)
987 {
988 if (throwOnNoConsole)
989 {
991 }
992 return default(global::Interop.Kernel32.CONSOLE_SCREEN_BUFFER_INFO);
993 }
994 if (!global::Interop.Kernel32.GetConsoleScreenBufferInfo(outputHandle, out var lpConsoleScreenBufferInfo) && !global::Interop.Kernel32.GetConsoleScreenBufferInfo(ErrorHandle, out lpConsoleScreenBufferInfo) && !global::Interop.Kernel32.GetConsoleScreenBufferInfo(InputHandle, out lpConsoleScreenBufferInfo))
995 {
996 int lastPInvokeError = Marshal.GetLastPInvokeError();
997 if (lastPInvokeError == 6 && !throwOnNoConsole)
998 {
999 return default(global::Interop.Kernel32.CONSOLE_SCREEN_BUFFER_INFO);
1000 }
1001 throw System.IO.Win32Marshal.GetExceptionForWin32Error(lastPInvokeError);
1002 }
1004 {
1005 _defaultColors = (byte)((uint)lpConsoleScreenBufferInfo.wAttributes & 0xFFu);
1007 }
1008 succeeded = true;
1009 return lpConsoleScreenBufferInfo;
1010 }
static IntPtr ErrorHandle
static volatile byte _defaultColors
static IntPtr InvalidHandleValue
static IntPtr InputHandle
static IntPtr OutputHandle
static volatile bool _haveReadDefaultColors
static Exception GetExceptionForWin32Error(int errorCode, string path="")
static string IO_NoConsole
Definition SR.cs:58
Definition SR.cs:7

References System.ConsolePal._defaultColors, System.ConsolePal._haveReadDefaultColors, System.ConsolePal.ErrorHandle, System.IO.Win32Marshal.GetExceptionForWin32Error(), System.Runtime.InteropServices.Marshal.GetLastPInvokeError(), System.ConsolePal.InputHandle, System.ConsolePal.InvalidHandleValue, System.SR.IO_NoConsole, and System.ConsolePal.OutputHandle.