Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Программа и интерфейс
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 11.10.2017, 13:23
avlid avlid вне форума
Прохожий
 
Регистрация: 08.12.2014
Сообщения: 5
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию Проблема с дочерним процессом

Прошу помочь. Много лет пользуюсь загрузчиком для оперы собственной разработки, но появилась проблема. Раньше запускал опера.exe функцией CreateProcess, получал хендл дочернего процесса и его контролировал. Но теперь Опера нахимичила и получается что после запуска процесса опера.ехе похоже запускает дочерний процесс и сама убивается. В результате родителем дерева процессов Опера становится десктоп. Как мне гарантировано отследить это и остаться родительским процессом имея хендл процесса, которого я напрямую не создавал??
Просто желающие помочь скачайте с сайта оперы последнюю версию и запустите ее через CreateProcess и сами поймете, посмотрев дерево процессов. Последняя нормально запускаемая версия оперы - 44.0.2510.1449.
Ответить с цитированием
  #2  
Старый 11.10.2017, 14:14
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
По умолчанию

Opera уже давно использует движок Chromium, каждая вкладка отдельный процесс. В Диспетчере задач отлично видно.
__________________
Пишу программы за еду.
__________________
Ответить с цитированием
  #3  
Старый 11.10.2017, 18:31
avlid avlid вне форума
Прохожий
 
Регистрация: 08.12.2014
Сообщения: 5
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

Я в курсе конечно же, я про хромиум и говорю. Все вкладки это дочерние процессы основного opera.exe. Про это и речь.
Ответить с цитированием
  #4  
Старый 11.10.2017, 18:55
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,057
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Ну, как вариант, мониторить снапшот процессов и устанавливать себя им в родители. Вот только вопрос - а нафига? Ну запустил оперу и все. Зачем ее еще мониторить?
Ответить с цитированием
  #5  
Старый 11.10.2017, 19:58
avlid avlid вне форума
Прохожий
 
Регистрация: 08.12.2014
Сообщения: 5
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

Это тема другого разговора..если коротко, то это вариант оперы для рабочего компа. Там идет работа на подключаемый автоматом зашифрованный контейнер, при бездействии через таймаут опера закрывается и контейнер отключается, ну или при закрытии оперы контейнер должен тоже отключится чтоб пароли все спокойно использовать. Ну и много чего еще там...
Ответить с цитированием
  #6  
Старый 11.10.2017, 21:41
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,057
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Ну тогда тем более достаточно просто мониторить процессы по имени. Даже их владельцем становиться не обязательно, просто получить их PIDы.
Ответить с цитированием
  #7  
Старый 12.10.2017, 05:08
avlid avlid вне форума
Прохожий
 
Регистрация: 08.12.2014
Сообщения: 5
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

Извините, не нужно меня убеждать что достаточно а что нет. У вас недостаточно информации для этого. Если нет возможности помочь по сути вопроса, прошу воздержаться от комментариев.
Ответить с цитированием
Этот пользователь сказал Спасибо avlid за это полезное сообщение:
M.A.D.M.A.N. (12.10.2017)
  #8  
Старый 12.10.2017, 12:29
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

Мысль такая (только не ругайся): запускать оперу и трейсить её выполнение, хукать ф-ю CreateProcess и отслеживать её результат.
Но это гиморный вариант, надо много кода писать, по сути самопальный отладчик делать.

http://www.delphisources.ru/forum/sh...ad.php?t=20851
Если найду исходники, то в паблик домейн надо будет их опубликовать
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
  #9  
Старый 12.10.2017, 12:39
avlid avlid вне форума
Прохожий
 
Регистрация: 08.12.2014
Сообщения: 5
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

Спасибо, так и предполагал, только сам не смогу.Ищу пример
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 05:41.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter