Widow – Rev 1

Subversion Repositories:
Rev:
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Text;

namespace Widow
{
    public static class Helpers
    {
        #region Public Methods

        public static IEnumerable<DesktopWindow> GetDesktopWindows()
        {
            foreach (var process in Process.GetProcesses())
            {
                yield return new DesktopWindow(process.MainWindowHandle, process.MainWindowTitle);
            }
        }

        public static IntPtr FindWindowByTitle(string name)
        {
            var hWnd = IntPtr.Zero;
            foreach (var pList in Process.GetProcesses())
            {
                if (pList.MainWindowTitle.Contains(name))
                {
                    hWnd = pList.MainWindowHandle;
                }
            }

            return hWnd;
        }

        public static string GetWindowTitle(IntPtr hWnd)
        {
            var length = Natives.GetWindowTextLength(hWnd) + 1;
            var title = new StringBuilder(length);
            Natives.GetWindowText(hWnd, title, length);
            return title.ToString();
        }

        #endregion
    }
}

Generated by GNU Enscript 1.6.5.90.