TProcess: trouble of kill
день добрый.
исходная идея "проекта" - запуск "процесса", выхлоп приложения в текстовое поле и... желательно в отдельном потоке.
пока как-то не очень удачно :о)
TProcess выполняется в процедуре.
нужно иметь возможность "прекратить работу процесса", в любое время.
сам процесс (как-то работает) но попытка сделать abort не увенчалась, процесс заканчивает "сам по себе".
схемо/код упрощен, но, надеюсь, смысл понятен.
кидайте любые идеи, ссылки, чтив, помидоры, буду разбираться.
исходные
- linux / slaclware 14.2
- fpc 3.2.2
- lazarus 3.8.0 / gtk/qt4/5/
спасибо.
p.s.
наборосал мини-вариант, разбираюсь, проявились еще более непонятные "особенности" работы с "командами/консолью"
как что-то еще нащУпаю - дополню.
!!! пока удалил код примера !!!
уточню детали, дополню топик
TProcess: trouble of kill
Модератор: Модераторы
TProcess: trouble of kill
Последний раз редактировалось sunjob 13.02.2026 03:49:04, всего редактировалось 5 раз.
поставить в очередь на удаление?
сначало засомневался, что понимаю совет (или не разбираюсь в теме), задал вопрос ии:
а какую концепцию имели в виду вы?Концепции «поставить в очередь на удаление» у TProcess не существует. Процесс не файл и не объект БД.
Исходя из ваших прошлых сообщений (fpKill не срабатывает, Process.Active := False не помогает), проблема не в синтаксисе, а в том, что сигнал не доходит или PID уже невалиден
Несколько сумбурно и не очень понятно. Пример нужен)sunjob писал(а): 12.02.2026 23:35:21 TProcess выполняется в процедуре.
нужно иметь возможность "прекратить работу процесса", в любое время.
сам процесс (как-то работает) но попытка сделать abort не увенчалась, процесс заканчивает "сам по себе".
PID берется из TProcess.ProcessID? Надо смотреть как запускается процесс. Вполне возможно что процесс не один и завершать надо дочерний или группу процессов. Код надо смотреть)sunjob писал(а): 13.02.2026 00:18:52 Исходя из ваших прошлых сообщений (fpKill не срабатывает, Process.Active := False не помогает), проблема не в синтаксисе, а в том, что сигнал не доходит или PID уже невалиден
