| Предыдущий | Следующий |
| VFW_E_NO_ACCEPTABLE_TYPES | VFW_E_INVALID_DIRECTION |
EVENT_E_USER_EXCEPTION
Что означает EVENT_E_USER_EXCEPTION
EVENT_E_USER_EXCEPTION (0x80040208) — Предоставленный пользователем компонент или подписчик создал исключение.
При результате 0x80040208 граница диагностики проходит внутри подсистемы «COM+ Event System», в области «subscriptions, publisher/subscriber и event query». Здесь сообщение «предоставленный пользователем компонент или подписчик создал исключение» связано с темой «user, exception».
Что проверить и как подтвердить исправление
В первую очередь сопоставьте первый отказ с фактическими параметрами операции. Для 0x80040208 в сценарии «предоставленный пользователем компонент или подписчик создал исключение» воспроизведите отказ на минимальном объекте и меняйте только одно условие за запуск, чтобы отделить неверный вход от состояния системы.
Сопоставьте с результатом 0x80040208 следующие данные: event CLSID, subscription ID, publisher/subscriber, query text и COM+ Event System records; отдельно запишите HRESULT, CLSID, IDs, ID, IErrorInfo. До исправления 0x80040208 сохраните исходное состояние объекта по теме «user, exception».
Практическое исправление для 0x80040208: исправьте регистрацию или запрос подписки и проверяйте результат для каждого подписчика отдельно. В контексте условия «предоставленный пользователем компонент или подписчик создал исключение» для 0x80040208 оно должно устранить подтверждённую причину, а не скрыть исходный HRESULT.
Закройте диагностику после двух проверок: исходный сценарий проходит без результата 0x80040208, а заведомо неверный вход отклоняется на ожидаемой границе.
Документация для результата 0x80040208: generic COM error codes · publishing a COM+ event · COM+ event class object.
Нужно найти другой код? Найти другой код состояния или ошибки.