Re: Посмотреть заголовки всех окон
От: DrWolf  
Дата: 14.01.10 13:28
Оценка:
Здравствуйте, Matveyka, Вы писали:

M>Задача: надо перебрать все окна всех процессов, запущенных в системе и получить доступ к их заголовкам. Как это сделать?



    public partial class MainForm : Form
    {
        [DllImport("user32.dll")]
        static extern int GetWindowText(int hWnd, StringBuilder text, int count);

        public MainForm()
        {
            InitializeComponent();
            Process[] procs = Process.GetProcesses();
            IntPtr hWnd;
            foreach (Process proc in procs)
            {
                if ((hWnd = proc.MainWindowHandle) != IntPtr.Zero)
                {
                    const int chars = 256;
                    StringBuilder Buff = new StringBuilder(chars);
                    GetWindowText(hWnd.ToInt32(), Buff, chars);
                    listBoxDomains.Items.Add(String.Format("{0} : {1}", proc.ProcessName, Buff.ToString()));
                }
            }        
        }
    }
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.