Показать сообщение отдельно
  #2  
Старый 29.04.2014, 17:10
Аватар для poli-smen
poli-smen poli-smen вне форума
Профессионал
 
Регистрация: 06.08.2012
Адрес: Кривой Рог
Сообщения: 1,791
Версия Delphi: Delphi 7, XE2
Репутация: 4415
По умолчанию

Цитата:
Сообщение от MrZerO
Доброго времени суток, хотел спросить есть ли код на завершение всех процессов в delphi 7? просто весь гугл облазил не нашел, помогите плиззз, очень нужно.(P.S для анлока-антивинлокер)
Сначала API-функцией EnumProcesses получаешь массив с PID-ами всех запущенных процессов, а затем в цикле для каждого из них вызываешь API-функцию TerminateProcess.
Но убить все процессы вряд-ли получится - некоторые Windows не даст убить, а убийство некоторых других будет автоматически приводить к перезагрузке Windows. (Впрочем перезагрузка Windows это тоже своего рода завершение всех процессов - тогда смотри в сторону API-функции ExitWindowsEx)
Да, и в процессе завершения процессов смотри случайно не убей самого себя, иначе на этом цикл завершения процессов разумеется закончится раньше времени, а чтобы не убить самого себя проверяй на равенство очередной PID со своим, который можно узнать API-функцией GetCurrentProcessId
Ответить с цитированием