Обработка ошибок, возникающих в ActiveX EXE - PullRequest
1 голос
/ 03 марта 2020

Я работаю в команде поддержки одного унаследованного проекта VB6, который связан с сокетной связью. У нас есть одна проблема в обработке ошибок.

Ниже приведены компоненты этого приложения.

  • Основной процесс

  • Activex Exe process

Главный процесс создает объекты класса activex, вызывает функции и потребляет события (например, подключение к сокету, чтение и т. д. c) из этих объектов. Модуль формы основного процесса имеет обработчики ошибок во всех функциях.

Обработчик ошибок основного процесса выполняет следующие действия:

  1. Журнал ошибок в файле

  2. Показывать пользователю Msgbox (стиль vbcritical)

В классе ActiveX все функции имеют обработчики ошибок. Обработчик ошибок процесса ActiveX выполняет следующие действия:

  1. Зарегистрируйте ошибку в файле

  2. Увеличьте ошибку, используя Err.raise

Мы наблюдали, когда функция класса ActiveX вызывается из основного процесса, и возникает некоторая ошибка в exe-функции ActiveX отображается сообщение об ошибке во время выполнения из exe-файла activex, и процесс ActiveX завершается, даже если в функциях основного процесса присутствуют обработчики ошибок.

Что-то не так в конструкции обработчиков ошибок или обработчики ошибок в одном процессе не могут отлавливать ошибки, возникшие в другом процессе?

...