AVZ 5. Руководство пользователя
×
Меню
Индекс

16.36.10. Пример

var
  i : integer;
begin
  // Обновление списка процессов
  RefreshProcessList;
  AddToLog('Количество процессов = '+IntToStr(GetProcessCount));
  // Цикл анализа полученного списка
  for i := 0 to GetProcessCount - 1 do begin
    // Вывод PID процесса и его имя
    AddToLog(IntToStr(GetProcessPID(i)) + ' '+ GetProcessName(i));
    // Остановка процесса по условию
    if pos('trojan.exe', LowerCase(GetProcessName(i))) > 0 then
       TerminateProcess(GetProcessPID(i));
  end;
end.
 
В примере использовались: AddToLog, GetProcessCount, GetProcessName, GetProcessPID, RefreshProcessList, TerminateProcess
 
Данный пример демонстрирует использование всех описанных выше функций для работы с процессам. Сначала при помощи функции RefreshProcessList производится обновление списка процессов. Затем производится просмотр списка в цикле с выводом информации в протокол.
Кроме того, производится завершение процессов, имя исполняемого файла которых содержит текст "trojan.exe" при помощи вызова TerminateProcess, которому передается идентификатор процесса (PID).