Что означает код HRESULT 0x8004E02D (CO_E_NOTCONSTRUCTED)?

 
Предыдущий Следующий
CO_E_NOTPOOLED CO_E_NOSYNCHRONIZATION

CO_E_NOTCONSTRUCTED

Где искать первичный отказ

CO_E_NOTCONSTRUCTED означает: Для корректной работы созданный компонент COM+ должен использовать конструирование объектов. Для области COM/DCOM это указывает на границу «COM runtime», поэтому первичную проверку нужно привязать к операции, которая вернула код.

Диагностическая выборка

  • зафиксируйте CLSID/IID, apartment, caller identity, server process и первый HRESULT исходного COM-вызова. Для условия «Для корректной работы созданный компонент COM+ должен использовать конструирование объектов» это позволяет восстановить исходный объект и не спутать его с последующим состоянием.
  • сохраните технические маркеры -2147164115, 2147803181, 1, 4, FACILITY_ITF с теми значениями, которые были видны до очистки/rollback; они привязывают «Для корректной работы созданный компонент COM+ должен использовать конструирование объектов» к реальному вызову.
  • снимите в трассировку момент первого результата и один исправный запуск, сохранив одинаковыми входные данные; различие должно появиться именно на стадии COM runtime.

Проверка гипотезы

локализуйте локализовать первый COM API, после которого состояние отличается от исправного контрольного запуска. Изменяйте только предпосылку, связанную с «Для корректной работы созданный компонент COM+ должен использовать конструирование объектов», а регистрацию, identity, входной объект и окружение по возможности оставляйте прежними.

не сводить разные стадии активации, marshaling и lifetime к общему сообщению о сбое COM; для результата «Для корректной работы созданный компонент COM+ должен использовать конструирование объектов» широкая переустановка, очистка каталога или ослабление безопасности не считается доказательством причины.

Для соседних результатов CO_E_INITIALIZATIONFAILED, CO_E_NOTPOOLED сравнивайте первую различающуюся операцию. Исправление подтверждено только тогда, когда исходная граница проходит при прежних входах и следующий ожидаемый шаг получает корректное состояние.

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


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