What does HRESULT 0x802A0106 (UI_E_TRANSITION_ALREADY_USED) mean?

 
Previous Next
UI_E_LOOPS_OVERLAP UI_E_TRANSITION_NOT_IN_STORYBOARD

UI_E_TRANSITION_ALREADY_USED

The scope of UI_E_TRANSITION_ALREADY_USED is Windows Animation Manager: the same transition object was added where a fresh transition instance was required. Preserve 0x802A0106 beside the returning call before cleanup or retry creates a more generic secondary failure.

Wrong turns

When it is returned, UI_E_DIFFERENT_OWNER can arise even with a never-used object; ALREADY_USED is specifically prior membership.

Do not AddRef the transition and assume reference counting permits multiple storyboard memberships.

Object and state boundary

When it is returned, Windows Animation is a stateful COM subsystem. During a this result investigation, animation variables, transitions and storyboards are created under a manager, scheduled against a monotonic animation time, updated before drawing, and eventually sealed or released. A visible glitch can therefore be downstream of a lifecycle, ownership, timeline, callback, or numeric contract failure.

During a this result investigation, a transition carries mutable scheduling membership and cannot be shared as a stateless formula. Reusing one COM object across storyboards or after a completed storyboard has been released violates that one-membership lifecycle.

The first owner to inspect is the animation manager, storyboard, transition, timer, or callback that returned the HRESULT.

Capture before retry

CaptureDiagnostic value
Transition identity for this HRESULT.This separates caller input from environment and service state and helps test the Windows Animation Manager boundary.
First storyboard membership for this HRESULT.This provides a stable comparison across retries or another machine and helps test the Windows Animation Manager boundary.
Second AddTransition call for this HRESULT.This identifies the exact object or resource generation involved and helps test the Windows Animation Manager boundary.
Factory or cache that supplied the object for this HRESULT.This places the failure on the lifecycle or transaction timeline and helps test the Windows Animation Manager boundary.

Controlled comparisons

ControlInterpretationHold constant
Same input, fresh object or connectionIf the result disappears, retained lifecycle or ownership state is implicated.While diagnosing this result, keep the original data, account, device, or timeline parameters unchanged.
Same object, reduced operationIf the result follows one specific transition, statement, file, or ceremony step, the failure is localized.While diagnosing this result, remove only unrelated work and keep the first failing boundary visible.
Same operation, controlled environmentIf the result follows one machine, account, volume, network, or device, environment matters.While diagnosing it, keep versions and identity explicit rather than comparing only the final message.

Step-by-step investigation

The investigation should change one variable at a time and keep the original failing sample.

  1. First: Create a new transition object per membership.
  2. Next: Cache parameters, not transition instances.
  3. Then: Log storyboard and transition identities.
  4. Finally: Release completed graphs before building replacements.

Closure criteria

Closure for this HRESULT requires each storyboard receives distinct transition instances with equivalent parameters and both schedule successfully; then repeat the next lifecycle operation to detect stale state.

Technical references

The references below define the API family or storage/protocol behavior used to interpret it.


Looking for a different code? Search another status or error code.