Как получить список активных процессов? HPL PLZ
От: Plastique  
Дата: 12.02.02 09:21
Оценка:
Очень нада убить процесс в памяти ПОМОГИТЕ ПОЗАЛУСТА
Re: Как получить список активных процессов? HPL PLZ
От: Максимов Андрей Россия  
Дата: 12.02.02 09:27
Оценка:
Здравствуйте Plastique, Вы писали:

P>Очень нада убить процесс в памяти ПОМОГИТЕ ПОЗАЛУСТА


Для получения списка —

CreateToolHelp32Snapshot,
Process32First,
Process32Next

А для убийства — TerminateProcess
Re[2]: Как получить список активных процессов? HPL PLZ
От: Максимов Андрей Россия  
Дата: 12.02.02 09:31
Оценка:
Здравствуйте Максимов Андрей, Вы писали:

МА>Здравствуйте Plastique, Вы писали:


P>>Очень нада убить процесс в памяти ПОМОГИТЕ ПОЗАЛУСТА


МА>Для получения списка -


МА>CreateToolHelp32Snapshot,

МА>Process32First,
МА>Process32Next

МА>А для убийства — TerminateProcess


Совсем забыл — перед TerminateProcess надо сделать OpenProcess, чтобы по ID получить Handle
Re: Как получить список активных процессов? HPL PLZ
От: Static Россия  
Дата: 17.02.02 19:44
Оценка:
{----------------------------------------------------------------------------------
Для получения списка процессов необходимо использование модуля tlhelp32 (uses tlhelp32).
LoadProcList — процедура загрузки списка процессов в TStrings, например в TListBox.Items.
TermProc — процедура уничтожения процесса по его ID, который можно получить используя LoadProcList.
----------------------------------------------------------------------------------}

Procedure LoadProcList ( List : TStrings );
Var
Proc : Thandle;
ProcTag : TagProcessentry32;
begin
Proc := CreateToolHelp32Snapshot( TH32CS_SNAPPROCESS, 0 );
ProcTag.dwSize := SizeOf ( ProcTag );
If Process32first ( Proc,ProcTag ) then
Repeat
List.Add ( ProcTag.ЧТО_ТЕБЕ_НАДО );
Until not Process32Next ( Proc, ProcTag )
End;

Procedure TermProc ( ProcID : Cardinal );
var
Proc : THandle;
begin
Proc := openprocess (PROCESS_TERMINATE, False, ProcID );
TerminateProcess ( Proc, 0 );
end;

//Пример:

Begin
LoadProcList ( ProcList.Items );
TermProc ( GetCurrentProcessId );
End;

+----------------------+
| С уважением, Static. |
| static@ecard.ru |
+----------------------+
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.