static WindowInfo GetWindowInfo(IntPtr hwnd, string processName) { WindowInfo wi = Utils.GetWindowInfo(hwnd); string childWindowName = GetChildWindowName(processName); if (!String.IsNullOrEmpty(childWindowName)) { EnumChildWindows(hwnd, (IntPtr childHWnd, IntPtr param) => { if (Utils.GetClassName(childHWnd) != childWindowName) { return(true); } wi.rcClient = Utils.GetWindowRect(childHWnd); return(false); }); } if (wi.rcWindow.left < 0 && wi.rcWindow.right < 0 && wi.rcWindow.top < 0 && wi.rcWindow.bottom < 0) { Console.Error.Write("Window is not on the screen"); Environment.Exit(1); } return(wi); }