//## Default (DisplayFusion) ##// using System; using System.Data; using System.Drawing; using System.Management; using System.Web; using System.Windows.Forms; using System.Xml; //## Default ##// using System.Runtime.InteropServices; public static class DisplayFusionFunction{ /*#####################################################################################################################################################################################################################################################################################################~{*/ /*//////| Run |////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////g2*/ /*#####################################################################################################################################################################################################################################################################################################~}*/ public static void Run(IntPtr windowHandle){ if(verify_IgnoredWindow(windowHandle)) {return;} if(! verify_IgnoredStyleWindow(windowHandle)){ maximize_Window(windowHandle); remove_Border (windowHandle); } else {BFS.Window.Maximize(windowHandle);} } /*#####################################################################################################################################################################################################################################################################################################~{*/ /*//////| Ignored Windows |/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////g2*/ /*#####################################################################################################################################################################################################################################################################################################~}*/ static string[] IGNORED_WINDOW_CLASSES = new string[]{ //## System ##// "MultitaskingViewFrame", // Windows Alt-Tab & Win-Tab Screens "Progman", // Windows Desktop "WorkerW", // Windows Desktop "ApplicationFrameWindow", // Windows Settings "Windows.UI.Core.CoreWindow", // Windows System Menus "NotifyIconOverflowWindow", // Windows System Tray "TaskManagerWindow", // Windows Task Manager "Shell_TrayWnd", // Windows Taskbar "TaskListThumbnailWnd", // Windows Taskbar Thumbnail //## Apps ##// "ClassicShell.CMenuContainer", // ClassicStart "ExplorerBrowserOwner", // Fences "WMP Skin Host", // Windows Media Player Visualizer "CWmpControlCntr", // Windows Media Player Visualizer (Full-Screen) }; static string[] IGNORED_WINDOW_STYLE_CLASSES = new string[]{ //## System ##// "CabinetWClass", // Windows File Explorer //## Apps ##// "GomPlayer1.x", // GOM Player "Chrome_WidgetWin_1", // Google Chrome "ThunderRT6Main", // XYplorer "ThunderRT6FormDC", // XYplorer }; /*#####################################################################################################################################################################################################################################################################################################~{*/ /*//////| Utils |////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////g2*/ /*#####################################################################################################################################################################################################################################################################################################~}*/ static bool verify_IgnoredWindow(IntPtr windowHandle){ string windowClass = BFS.Window.GetClass(windowHandle); return (Array.IndexOf(IGNORED_WINDOW_CLASSES, windowClass) >= 0); } static bool verify_IgnoredStyleWindow(IntPtr windowHandle){ string windowClass = BFS.Window.GetClass(windowHandle); return (Array.IndexOf(IGNORED_WINDOW_STYLE_CLASSES, windowClass) >= 0); } static BFS.WindowEnum.WindowStyle[] borderedWindowStyles = new BFS.WindowEnum.WindowStyle[]{ BFS.WindowEnum.WindowStyle.WS_CAPTION, BFS.WindowEnum.WindowStyle.WS_SYSMENU, BFS.WindowEnum.WindowStyle.WS_THICKFRAME__SIZEBOX, BFS.WindowEnum.WindowStyle.WS_MINIMIZEBOX, BFS.WindowEnum.WindowStyle.WS_MAXIMIZEBOX, }; static void remove_Border(IntPtr windowHandle){ BFS.WindowEnum.WindowStyle style = BFS.Window.GetWindowStyle(windowHandle); foreach(BFS.WindowEnum.WindowStyle subStyle in borderedWindowStyles) {style &= ~subStyle;} BFS.Window.SetWindowStyle(style, windowHandle); } static void maximize_Window(IntPtr windowHandle){ BFS.Window.SetSizeAndLocation(windowHandle, -1080, 0, 6000, 2160); } [DllImport("user32.dll")] static extern IntPtr SetWindowPos(IntPtr hWnd, int hWndInsertAfter, int x, int y, int cx, int cy, int wFlags); const short SWP_NOZORDER = 0x4; const int SWP_SHOWWINDOW = 0x0040; }// /DisplayFusionFunction