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

Вниз

Неумирающий процесс.   Найти похожие ветки 

 
Basilio ©   (2003-07-29 18:19) [0]

Win98SE, Delphi 5.
Процесс создан при помощи CreateProcess.
У него перехватываются потоки ввода/вывода:stdin,stderr,stdout.
в startupinfo dwflags стоит STARTF_USESTDHANDLES;
в CreateProcess флаг InheritHandles=false.

в списке процессов FarManager"a значатся WINOLDAP и REDIR32, которые умирают с процессом, при условии, что он умирает собственной смертью.

если при помощи TerminateProcess попробовать убить етот процесс, то ничего не получится. TerminateProcess вернёт true, а процесс останется живым. Повторные вызовы TerminateProcess возвращают false. Far тоже его убить по F8 не может :(

Если у процесса ввод/вывод не перенаправлять
(убрать .dwFlags=STARTF_USESTDHANDLES), то REDIR32 не грузиться и процесс нормально убивается.

Как можно бороться с процессом?


 
AlexRush ©   (2003-07-30 12:05) [1]

Во первых: TerminateProcess... Terminating a process does not necessarily remove the process object from the system. A process object is deleted when the last handle to the process is closed.
Во вторых: Можно внедриться в него (DebugAPI, Hooks и пр.) и грохнуть изнутри (ExitProcess).
В третих: поискать исходники sysinternals"овского ProcExplorer"a (они где то есть, но где... :)


 
Basilio ©   (2003-09-11 11:55) [2]

up,
DebugAPI - это часом, не VDMDBG.DLL?

Копал долго.. накопал, что пути могут быть найдены в использовании библиотек (в зависимости от операционки) NTVDM.EXE, VDMDBG.DLL, PSAPI.DLL, TollHelp32.

где взять подробную информацию по ним?
статья http://www.rsdn.ru/article/qna/baseserv/killapp.xml проливает мало света.. :(
Очень интересуют функция VDMTerminateTaskWOW и иже с ней.


 
Игорь Шевченко ©   (2003-09-11 12:47) [3]


> исходники sysinternals"овского ProcExplorer"a (они где то
> есть, но где... :)


Их нету :) или есть у Руссиновича с Когсуелом :))

> Очень интересуют функция VDMTerminateTaskWOW и иже с ней


Попробуй в Wine поискать, может, прольет свет...



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

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

Наверх




Память: 0.47 MB
Время: 0.023 c
6-41790
ilka
2003-09-17 14:46
2003.11.13
Какой компонент надо использовать?


3-40892
diokant
2003-10-20 11:58
2003.11.13
Как обеспечить отображение в TDBCheckBox null и false как не вы..


3-40951
Slim
2003-10-24 21:47
2003.11.13
Проблема выбора?


1-41423
zapped
2003-11-04 12:29
2003.11.13
D5 vs D7, Threads, EThread Exception


1-41664
TUser
2003-10-25 12:25
2003.11.13
showMessage