private static bool EnumTopWindows(IntPtr hWnd, IntPtr lParam) { int winProcessId = 0; WindowAction.GetWindowThreadProcessId(hWnd, out winProcessId); if (!IsWindow(hWnd) || !WindowAction.IsWindowVisible(hWnd) || hWnd == WindowAction.statusbar ) { return(true); } GCHandle gch = (GCHandle)lParam; ProcessHWinds phw = (ProcessHWinds)(gch.Target); if (!DoesWindowBelongToProcess(hWnd, phw.processId)) { return(true); } phw.topWinds.Add(hWnd); return(true); }
public static bool IsValidWindow(IntPtr hWnd) { if (!WindowAction.IsWindowVisible(hWnd) || hWnd == WindowAction.statusbar || !WindowAction.IsWindow(hWnd)) { return(false); } return(true); }