Вниз
Скачать: CL | DM;

Убить прогу   Найти похожие ветки 

 
R_D   (2002-08-23 12:46) [0]

Как завершить работу чужой программы, тоже но если она висит.
Вообшем как по Ctrl+Alt+Del


 
Viktor Kushnir ©   (2002-08-23 16:42) [1]

Можно так, если HWND процесса знаешь.
procedure Kill(hndl: HWND);
begin
Hndl := OpenProcess(PROCESS_TERMINATE, FALSE, Hndl);
if Hndl <> null
then begin
TerminateProcess(Hndl, 0);
CloseHandle(Hndl);
end
end;


 
Almaz ©   (2002-08-24 00:29) [2]


> Viktor Kushnir © (23.08.02 16:42)
> Можно так, если HWND процесса знаешь.

HWND - это handle окна, а если это так, то ваш код не сработает, т.к. OpenProcess должен получать не ссылку, а идентификатор и не окна, а процесса. Который, впрочем, можно получить, зная handle окна используя функцию GetWindowProcessID.


> R_D (23.08.02 12:46)
> Как завершить работу чужой программы, тоже но если она висит.
> Вообшем как по Ctrl+Alt+Del

Если хотите именно "как по Ctrl+Alt+Del", то лучше использовать функцию EndTask - именно ей пользуется Task Manager.

Удачи.


 
s.kaster ©   (2002-08-26 20:31) [3]

PostMessage(FindWindow(Nil, PChar(точное имя программы)), WM_CLOSE, 0, 0);


 
Song ©   (2002-08-26 21:32) [4]

2s.kaster © (26.08.02 20:31)
ЕСЛИ ОНА ВИСИТ!!! Как программа может обрабатывать сообщения, если она висит ;-)))


 
Mike_Z   (2002-08-29 13:41) [5]

Вариант с TerminateProcess виснет 50 на 50.
EndTask есть в Kernel & User.dll, но описание его где взять и под все ли Win он работает?



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.011 c
6-45478
Ksion
2002-08-11 08:30
2002.10.14
Помогите, плиз! Получение файлов из инета.


14-45551
qube
2002-09-19 15:30
2002.10.14
Идиотский вопрос.


4-45613
Eugene_Jek_Efimochkin
2002-08-29 23:18
2002.10.14
получение hInstance


4-45632
Zejj
2002-08-29 17:59
2002.10.14
Как послать некую последовательность битов на Lpt порт?


3-45208
big_bugzy
2002-09-23 14:23
2002.10.14
Помогите разобраться с редактированием/добавлением




   Наверх