Site icon EfmSoft

What does Windows error code 1113 (ERROR_NO_UNICODE_TRANSLATION) mean?

 
Previous Next
ERROR_NO_MEDIA_IN_DRIVE ERROR_DLL_INIT_FAILED

ERROR_NO_UNICODE_TRANSLATION

no mapping for the unicode character exists in the target multi-byte code page.

ERROR_NO_UNICODE_TRANSLATION means that a Unicode-to-legacy-code-page conversion encountered one or more characters that cannot be represented.

Where the result appears

  • WideCharToMultiByte and similar conversion APIs.
  • writing filenames, text, or protocol fields to legacy encodings.
  • interop with ANSI-only applications, devices, databases, or wire formats.
  • locale-sensitive import/export and command-line processing.

Typical causes

  • the destination code page lacks the source character.
  • strict conversion flags reject best-fit or replacement mappings.
  • the wrong code page was selected for the external format.
  • input contains supplementary, combining, or script characters unsupported by the legacy encoding.

What to collect

  • source text or escaped code points, target code page, flags, and default-character settings.
  • whether the external format actually specifies UTF-8 or another encoding.
  • OS locale assumptions and any prior lossy conversion.
  • the first unrepresentable character and the required round-trip behavior.

Handling and recovery

Prefer UTF-8 or another Unicode encoding end to end. When a legacy format is mandatory, define whether rejection, transliteration, or an explicit replacement character is acceptable, and report the affected field to the caller. Never silently reinterpret bytes using the machine’s current ANSI code page.

Common misinterpretation

The source Unicode text is not necessarily invalid. The failure means the chosen destination encoding cannot represent it without loss.

References


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

Exit mobile version