Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Процессы [D7, WinXP]


Страницы:   1 2

Grief ©   (2005-08-10 22:56:00) 

Как получить список всех процессов - раз, как узнать расход процессора и памяти на них два. Плюс если еще чтото по процессу можно узнать - тоже можете сказать. Спасибо.


Grief   (2005-08-11 10:46:00) [21]

А универсального и под нт и под 9х нет?


begin...end   (2005-08-11 10:24:00) [22]

> Kazakh   (11.08.05 10:19) [2]

Это способ получения списка окон, а не процессов. Причём не самый лучший, поскольку цикл может зависнуть.


Digitman   (2005-08-11 10:22:00) [23]


> Kazakh   (11.08.05 10:19) [2]


и где в твоем коде хоть какое-либо упоминание о процессах ?


Kazakh   (2005-08-11 10:19:00) [24]

Получить список процессов

Поставь на форму список TListbox и кнопку TButton, по нажатию на кнопке напиши такой код:

procedure TForm1.Button1Click(Sender: TObject);
var
 Wnd: hWnd;
 buff: array[0..127] of Char;
begin
 ListBox1.Clear;
 Wnd := GetWindow(Handle, gw_HWndFirst);
 while Wnd <> 0 do begin {Не показываем:}
   if (Wnd <> Application.Handle) and {-Собственное окно}
     IsWindowVisible(Wnd) and {-Невидимые окна}
     (GetWindow(Wnd, gw_Owner) = 0) and {-Дочернии окна}
     (GetWindowText(Wnd, buff, sizeof(buff)) <> 0) {-Окна без заголовков}
     then begin
     GetWindowText(Wnd, buff, sizeof(buff));
     ListBox1.Items.Add(StrPas(buff));
   end;
   Wnd := GetWindow(Wnd, gw_hWndNext);
 end;
 ListBox1.ItemIndex := 0;
end;


Digitman   (2005-08-11 08:30:00) [25]

1. Под НТ - см. psapi.pas (EnumProcesses), под Win9x - см. tlhelp32.pas (CreateToolhelp32Snapshot, Process32First/Next)

2.  GetProcessWorkingSetSize()

3. Что конкретно ?


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо