What does HRESULT 0x8002000C (DISP_E_UNKNOWNLCID) mean?

 
Previous Next
DISP_E_BADINDEX DISP_E_ARRAYISLOCKED

DISP_E_UNKNOWNLCID

Automation call uses an unsupported locale identifier

DISP_E_UNKNOWNLCID is HRESULT 2147614732 (0x8002000C) from winerror.h. The documented description is “Unknown language.” The value must be interpreted at IDispatch name lookup or invocation that requests locale-sensitive conversion.

The target does not recognize or support the supplied LCID for the requested operation.

Where the result appears

  • This result is returned while Automation binds or executes IDispatch name lookup or invocation that requests locale-sensitive conversion.

Typical causes and interpretation

Common cause categories are: an invalid LCID is passed; the component supports only invariant or installed locales; a remote system lacks the locale data. The candidate causes are alternatives, so test one precondition at a time instead of applying several broad repairs together.

Key distinction: the target does not recognize or support the supplied LCID for the requested operation.

Evidence to preserve

  • Record this result with the object CLSID or ProgID, interface identity, member DISPID, dispatch flags, and type-library version.
  • Capture LCID value; user and system locale; target-supported locales; conversion being attempted; type-library locale.

Telemetry should be reproducible without copying secret values: prefer GUIDs, lengths, flags, sanitized names, and correlation IDs.

Correct handling and recovery

The appropriate recovery is to use a documented supported LCID, prefer invariant typed values, and avoid guessing locale from display language.

Practical scenario

A client passes a custom LCID copied from configuration; switching to the application’s supported locale restores name lookup.

Difference from related HRESULTs

TYPE_E_UNKNOWNLCID occurs while loading or creating type information; it occurs during live Automation dispatch.

Keeping it separate from its neighbor improves retry, cleanup, and user messaging because the two results imply different postconditions.

References


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