Что означает код HRESULT 0x801B8004 (WER_E_ALREADY_REPORTING)?

 
Предыдущий Следующий
WER_E_NOT_INITIALIZED WER_E_DUMP_THROTTLED

WER_E_ALREADY_REPORTING

Практический смысл

WER_E_ALREADY_REPORTING (0x801B8004) относится к Windows Error Reporting. Это failure HRESULT. Короткий ориентир по имени статуса: уже / формирование отчёта. Код фиксирует конкретную границу операции; сам facility не объясняет, какой объект, вход или этап вызвал состояние.

Исходное описание условия: Another Windows Error Reporting operation is already active for the specified process.. Сопоставляйте эту формулировку с первым нативным возвратом, а не с поздней wrapper exception или сообщением UI.

Граница проверки

Определите стадию WER: создание отчёта, добавление dump/attachments, локальная очередь/архив или отправка. Вторичная ошибка репортинга не должна затереть первичное падение приложения.

Специфичные признаки из исходного описания

  • Another Windows Error Reporting operation is already active for the specified process.
  • Here setup has progressed far enough that WER recognizes an existing reporting operation.
  • Typical concurrency patterns two crash observers submit for one process at nearly the same time;
  • Keep the coordinator independent of the crashing subsystem so it cannot be entered recursively through the same logger, allocator, or exception path.
  • Serialization design Use one process-wide coordinator that accepts incident metadata and decides whether to submit, coalesce, or defer.
  • What the result does not mean It does not say that WER globally refuses reports, that a matching bucket already exists, or that throttling has been applied.
  • A second component should append safe metadata to its own logs rather than opening a competing WER transaction.

Что сохранить до исправления

  • исходный exception/fault signature и faulting module
  • первый Wer* API и состояние report handle
  • WER_SUBMIT_RESULT, queue/archive state и соответствующие event-log записи
  • пути, размеры и доступность dump/attachments до передачи WER
  • код-специфичный маркер для этого случая: уже / формирование отчёта

Порядок диагностики

  1. Проверьте именно признак уже / формирование отчёта; не объединяйте его с соседними кодами той же подсистемы.
  2. Сверьте trace с наиболее специфичным исходным условием: Another Windows Error Reporting operation is already active for the specified process..

Исправление и критерий проверки

Исправляйте только подтверждённую стадию отчёта и повторяйте с минимальным набором артефактов. Не создавайте рекурсивный WER-отчёт из того же пути обработки ошибки.

Положительный контроль должен убрать условие Here setup has progressed far enough that WER recognizes an existing reporting operation., а отрицательный — по-прежнему воспроизводить ожидаемый отказ на заведомо неверном входе или состоянии. Так можно отличить исправление причины от случайного изменения маршрута выполнения.

Технические ссылки


Нужно найти другой код? Найти другой код состояния или ошибки.