Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.04;
Скачать: CL | DM;

Вниз

убить чужой процесс   Найти похожие ветки 

 
juiceman ©   (2004-03-07 23:12) [0]

Задача такая: моя программа должна завершить чужой процесс, зная о нем только путь к его экзешнику и то , что он написан на дэлфе (а также не имеет видимых окон). Существует ли апи-функция, при  помощи которой я смогу получить атрибуты этого процесса? Или придется искать его по окну, ведь слыхал что каждое VCL-приложение имеет окно (но это будет геморный вариант)


 
Cobalt ©   (2004-03-08 00:33) [1]

А какого рода аттрибуты вас интересуют?
Файла ехе-ника?
Ещё: когда должна завершать процесс?
Какая ОС?
На каком языке программирования пишете?


 
juiceman ©   (2004-03-08 00:45) [2]

По-порядку:
1) Интересует procid или handle (если не ошибаюсь)
2) нет, не файла - процесса
3) по условию, например нажатие на кнопку
4) Виндус ХП хоум эдишн
5) на делфях


 
Cobalt ©   (2004-03-08 00:49) [3]

Тогда рекомендую Вам зайти в разделы "WinAPI" и "Система" - там такие вопросы рассматривались.
Также рекомендую заглянуть в UBPFD - бесплатная база готовых решений для Delphi
http://delphibase.endimus.com/


 
VID ©   (2004-03-08 01:18) [4]

Procedure TForm1.RemoveProcessAndFile;
var
 handler:thandle;
 data:TProcessEntry32;
 Procedure Kill;
 var H:THandle;
 begin
   //Убиваем процесс.
   try
     H:=OpenProcess(PROCESS_TERMINATE, False, Data.th32ProcessID);
     IF H<>0 then TerminateProcess(H, 0);
   except end;
   Sleep(3000); //ждём 3 секунды
   //... и удаляем файл
   DeleteFile(IncludeTrailingBackslash(sys.SysDir) + Trim(data.szExeFile));
 end;
begin
 handler:=CreateToolhelp32Snapshot(TH32CS_SNAPALL,0);
 try
   if Process32First(handler,data) then
   begin
     IF Data.szExeFile=ExtractFileName(Your_file) then Kill;
     while Process32Next(handler,data) do
       IF Data.szExeFile=ExtractFileName(Your_file) then Kill;
   end;
 finally
   CloseHandle(handler);
 end;
end;


 
juiceman ©   (2004-03-08 02:56) [5]

2 Cobalt © спасибо, включаю поиск ...
2 VID спасибо за готовый сырец, но ...
уже на TProcessEntry32 ругается.  Заголовки надо, только какие? Поехали искать ...


 
juiceman ©   (2004-03-08 03:11) [6]

нашел, TlHelp32.
И абсолютно рабочий код на единой базе.
Еще раз всем спасибо, сложновато оно пока для меня самому разбираться в таком вин-апи.



Страницы: 1 вся ветка

Текущий архив: 2004.04.04;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.026 c
1-1078918211
Ivander
2004-03-10 14:30
2004.04.04
Компиляция


14-1078837993
Nelud
2004-03-09 16:13
2004.04.04
Еще немного физики...


1-1079593159
ПрогерШ
2004-03-18 09:59
2004.04.04
Как передать как параметр - ссылку на функцию?


7-1074601161
Application
2004-01-20 15:19
2004.04.04
Процесс и память


1-1079341340
TUser
2004-03-15 12:02
2004.04.04
Оптимизатор