private static IntPtr GetVirtualBoxInForeground(IntPtr foregroundWindow, string foregroundWindowTitle)
        {
            var mainWindow = IntPtr.Zero;

            if (GetWindowClass(foregroundWindow) == "QWidget" &&
                foregroundWindowTitle.EndsWith("VirtualBox"))
            {
                WinApi.EnumChildWindows(foregroundWindow, (hwnd, lParam) =>
                {
                    if (GetWindowString(hwnd) == "qt_scrollarea_vcontainer" &&
                        GetWindowClass(hwnd) == "QWidget")
                    {
                        mainWindow = WinApi.GetParent(hwnd);
                        return(false);
                    }
                    return(true);
                }, IntPtr.Zero);
            }
            return(mainWindow);
        }
        private static bool IsDesktopWindowLineage(IntPtr hwnd)
        {
            var parent = WinApi.GetParent(hwnd);

            if (parent == IntPtr.Zero)
            {
                return(false);
            }

            var parentparent = WinApi.GetParent(parent);

            if (parentparent == IntPtr.Zero)
            {
                return(false);
            }

            var ancestor = WinApi.GetAncestor(hwnd, 2);

            return(ancestor == parentparent);
        }