Что означает код HRESULT 0x8004E026 (CONTEXT_E_NOJIT)?

 
Также может означать:
КонстантаТипОС
SL_E_INVALID_USE_OF_ADD_ON_PKEYHRESULTWindows
Предыдущий Следующий
CO_E_INITIALIZATIONFAILED SL_E_INVALID_USE_OF_ADD_ON_PKEY

CONTEXT_E_NOJIT

Граница, на которой возникает код

Штатный смысл CONTEXT_E_NOJITДля операции требуется JIT в текущем контексте, но он отсутствует. Диагностику полезно начинать не с общего восстановления системы, а с операции уровня COM+ context, transaction и synchronization, которая первой вернула этот результат.

Параметры контрольного случая

  • Зафиксируйте activity/context ID, transaction ID/state, role, synchronization boundary, thread/apartment и время вызова; для этого результата эти данные должны относиться к первому неуспешному вызову, а не к cleanup после него.
  • Отдельно сопоставьте JIT activation settings component с текущим context и activation path. Это проверяет условие «Для операции требуется JIT в текущем контексте, но он отсутствует» по фактическим параметрам, а не по имени константы.
  • Сохраните технические маркеры 0x8004E026, -2147164122, 2147803174, 1 и один исправный запуск с теми же входными данными.

Безопасный повтор

Воспроизведение считается диагностическим, если удаётся сопоставить вызов с жизненным циклом транзакции/контекста и повторить на свежем component context, сохранив прочие условия без изменений.

Избегайте недоказанного workaround: не повторять side-effecting method, пока неизвестно состояние исходной транзакции. После исправления должен проходить тот же контракт, который раньше возвращал HRESULT.

Ближайший по прежнему шаблону результат CONTEXT_E_ROLENOTFOUND не следует считать эквивалентным: сравнивайте точное условие, указанное здесь, и первую различающуюся операцию.

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


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