public static IntPtr FindWindowInProcess(Process process, Func <string, bool> compareTitle) { IntPtr zero = IntPtr.Zero; foreach (ProcessThread thread in process.Threads) { zero = Lumi.FindWindowInThread(thread.Id, compareTitle); if (zero != IntPtr.Zero) { break; } } return(zero); }