Помощь - Поиск - Пользователи - Календарь
Полная версия: Виртуальная память процесса
Форум «Всё о Паскале» > Современный Паскаль и другие языки > Делфи
Magdalina
Добрый день! У меня такой вопрос: как вывести в ListView карту виртуальной памяти выбранного процесса. Там должно быть 4 колонки: База, Статус, Размер, Атрибут защиты. Процесс можно выбрать из ListBox. Вот функция выводящая список процессов.
Код

procedure TForm1.Button2Click(Sender: TObject);
  var
Nomp,a  : Integer;
SH           : Thandle;
Num, I     : Integer;
PPE         : TProcessEntry32;
Pr_names : array [0..50] of string;
begin
  Num := 0;
  SH := CreateToolHelp32SnapShot(Th32cs_SnapAll, 0);
  PPE.dwSize := sizeof (ProcessEntry32);
  Process32First(SH, PPE);
  Pr_Names [Num] := PPE.szExeFile;
    while Process32Next(SH, PPE) do begin
    Num := Num + 1;
  Pr_Names [Num] := PPE.szExeFile;
  Pr_num  [Num] := PPE.th32ProcessID;
end;
  Listbox2.Clear;
  for I := 0 to Num do Listbox2.Items.Add(Pr_Names[I]);
  CloseHandle(SH)
end;

М
Magdalina, чтобы не дублировать темы, что есть нарушение Правил (ссылка вверху страницы), рекомендую тебе зарегистрироваться - тогда ты получишь возможность исправлять свои посты. Успехов!
Lapp

volvo
Drkb -> Системные функции и WinAPI -> Windows -> Работа с чужими процессами -> Поиск в памяти процесса

См. там, как перечисляются регионы виртуальной памяти процесса ...
Magdalina
У меня не получается вывести это в Memo, прога совсем повисает.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.