Отловить завершение процесса

Тема в разделе "MS Visual C++", создана пользователем GanZf, 10 апр 2008.

  1. GanZf

    GanZf Гость

    Есть два процесса, один запускает другой. Оба написаны на 6-й студии с участием сторонних dll-ек. Иногда (довольно редко) второй процесс выдает окошко с ошибкой ("The instructions at xxx referenced memory at yyy. The memory could not be "written""), которую вызывают функции сторонних dll-ек.
    Вариант "починить" dll-ку успеха не принес. Самым простым пока кажется вариант просматривать первым процессом состояние второго и при необходимости вырубать и перезапускать. Вопрос в том, как это сделать? Если второй процесс выдает ошибку, формально он еще не умер и поэтому нельзя отловить время его окончания. Пока вариант - обмен сообщениями и использование таймера, если процесс долго не отвечает - вырубать, но такой вариант не очень нравится.

    Если написал не в тот раздел, пожалуйста перенесите, куда нужно.
     
  2. Kmet

    Kmet Well-Known Member
    Java Team

    Регистрация:
    25 май 2006
    Сообщения:
    1.018
    Симпатии:
    1
    SEH фреймом ловить исключение, или пошаманить с настройками VC компилятора, что бы он SEH исключения обретывал в С++ исключения и уже их ловить или .... вообщем вариантов много
     
  3. GanZf

    GanZf Гость

    Спасибо. попробую разобраться.
     
Загрузка...

Поделиться этой страницей