Site icon EfmSoft

What does HRESULT 0x80400002 (INPUT_E_MULTIMODAL) mean?

 
Previous Next
INPUT_E_REENTRANCY INPUT_E_PACKET

INPUT_E_MULTIMODAL

INPUT_E_MULTIMODAL belongs to pointer sequencing and interaction state. The requested input cannot be processed while an interaction using another pointer type is still active.

What the status establishes

Pointer delivery is a state machine, not a stream of interchangeable coordinates. Windows associates samples with a pointer identity, frame, device, modality, timestamp domain, and callback phase. Sequence failures are therefore diagnosed by reconstructing when the interaction began, which modality owns it, and whether the caller re-entered the same state machine before the previous notification completed.

Windows tracks modality because touch, pen, mouse, and other pointer types can have different capture and gesture semantics. A second modality cannot simply be spliced into an unfinished interaction without an explicit transition.

Evidence to preserve

  • Active pointer IDs and their pointer types
  • Capture owner, interaction state, and contact begin/end events
  • The new packet that introduced the other modality
  • Device arrival, promotion, or synthetic-input policy in effect

Reduce the scenario safely

Use one live pointer and one monotonic time source, then add replay, modality changes, or callback-triggered work separately. A test that changes timestamp generation and callback dispatch at the same time cannot identify which contract was violated.

  1. complete or cancel the active interaction before starting a second pointer type.
  2. Test touch-only and pen-only traces separately.
  3. Introduce the modality transition at a clean frame boundary.
  4. Verify that pointer promotion is not duplicating one physical action as two logical modalities.

Keep neighboring failures separate

INPUT_E_FRAME can report mixed or inconsistent frame contents; it indicates that another modality is already engaged even if the new packet is individually well formed. Do not relabel a pen packet as touch or suppress pointer type merely to pass validation; downstream gesture behavior and security assumptions depend on the real modality.

Technical references


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

Exit mobile version