Что означает код HRESULT 0x802A0104 (UI_E_END_KEYFRAME_NOT_DETERMINED)?

 
Предыдущий Следующий
UI_E_START_KEYFRAME_AFTER_END UI_E_LOOPS_OVERLAP

UI_E_END_KEYFRAME_NOT_DETERMINED

Где возник отказ

Значение 0X802A0104 возникает на границе Windows Animation Manager storyboard/transition lifecycle; конкретная проверка для этого случая — конечный / keyframe / не / определён. Диагностику начинайте с producer, object generation и входного state, а не с последнего пользовательского сообщения.

Storyboard или transition могут оставаться scheduled/sealed/used после визуального завершения, поэтому reuse должен опираться на API status, а не на предположение caller.

Конкретные признаки из исходного EN-описания

  • UI_E_START_KEYFRAME_AFTER_END has resolved or potentially ordered times; this code is about indeterminacy.
  • It marks the storyboard cannot guarantee an end keyframe time when the start is reached.
  • First: Replace dynamic duration with a fixed value as a control.
  • Finally: Test the graph before adding loops or overlaps.

Диагностический снимок

  • animation manager/storyboard/transition identity и lifecycle generation.
  • manager update time, schedule/status и callback ordering.
  • точный IUIAnimation* method и первый HRESULT.

Для timeline ошибок фиксируйте update time и callback ordering: reentrancy или поздний update способны сделать старое действие недопустимым для уже изменившегося object state.

Как отделить соседний код

Сопоставьте producer с «конечный / keyframe / не / определён». Если method, identity объекта или generation отличаются, это уже другой эксперимент, даже когда верхний слой показывает тот же общий текст.

Для «конечный / keyframe / не / определён» сопоставьте storyboard/transition status и manager update time. Визуальное положение объекта не заменяет lifecycle-state, который Windows Animation Manager считает активным.

Критерий восстановления

Приведите storyboard/transition к состоянию, разрешающему операцию «конечный / keyframe / не / определён», либо создайте новый объект для overlapping work; затем подтвердите поведение на том же animation timeline.

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


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