Форум: "Потрепаться";
Текущий архив: 2004.04.04;
Скачать: [xml.tar.bz2];
Вниз
убить чужой процесс Найти похожие ветки
← →
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;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.034 c