0X00000247

Fix ERROR_UNDEFINED_CHARACTER (0x00000247) – Unicode character not found

Windows Errors Intermediate 👁 8 views 📅 May 28, 2026

This error means your system can't display a specific Unicode character—usually because of a missing font or broken code page. I'll show you how to track it down and fix it.

Quick answer

Run sfc /scannow in an admin command prompt, then install the missing font or change your system locale to the correct code page. If that doesn't work, check the registry for a corrupted CodePage value.

Why this happens

I see this error mostly in two places: when an app tries to render a character the current font doesn't support, or when the system's code page registry gets corrupted after a failed Windows update or a language pack install. Had a client last month whose entire print queue died because a PDF embedded a rare Unicode glyph (U+1F600) that their older printer driver couldn't handle. The error code 0x00000247 is Windows telling you "I don't know what this character is." It's not a hardware problem—it's a font or encoding mapping issue.

The real fix depends on where the error shows up. If it's in a specific app, it's almost always a missing font. If it's system-wide (like in file names or the Start menu), you're looking at a corrupted code page or locale setting.

How to fix ERROR_UNDEFINED_CHARACTER (0x00000247)

Step 1: Run System File Checker

Start with this because it's fast and catches corrupted system files that mess up Unicode support.

  1. Open Command Prompt as administrator (right-click Start > Windows Terminal (Admin)).
  2. Type sfc /scannow and hit Enter.
  3. Let it finish. If it finds corrupted files, reboot and re-run to verify.

If that doesn't fix it, move on.

Step 2: Check for missing fonts

The most common cause. If you're getting this error in a document, email, or a specific program, the font you're using is missing a glyph.

  1. Open the file that triggers the error. Note the font name if possible.
  2. Go to C:\Windows\Fonts and see if that font exists. If not, download and install it.
  3. If you can't identify the font, install a comprehensive one like Segoe UI Emoji (for Unicode symbols) or Arial Unicode MS.

I've seen this happen when someone pastes emoji from their phone into a Windows app that only uses old fonts like Courier New.

Step 3: Check the system locale and code page

If the error is system-wide (e.g., in file names, menus), your locale might be set wrong.

  1. Open Control Panel > Clock and Region > Region.
  2. Go to the Administrative tab.
  3. Click Change system locale.
  4. Select your correct language/region (e.g., English (United States)).
  5. Check the box Beta: Use Unicode UTF-8 for worldwide language support.
  6. Reboot.

That UTF-8 beta option has saved me on multiple machines where the old code page couldn't handle certain Unicode ranges.

Step 4: Fix the registry (advanced)

If steps 1-3 fail, the code page registry key might be corrupted. Had a client whose system locale was fine but the registry value was pointing to a non-existent file.

  1. Press Win+R, type regedit, hit Enter.
  2. Navigate to: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage
  3. Look for a value named ACP (ANSI code page) or OEMCP. Ensure the data matches your system locale (e.g., 1252 for Western European).
  4. If it's wrong or missing, change it to the correct value. You can find a list online—default for US English is 1252 for ACP, 437 for OEMCP.
  5. Reboot.

Warning: Only do this if you're comfortable with the registry. Back up the key first.

Alternative fixes if the main one fails

  • Reinstall the affected app. Sometimes the app itself has a missing font file. A clean reinstall includes its font resources.
  • Disable font caching. Run net stop FontCache in an admin command prompt, then delete the contents of C:\Windows\ServiceProfiles\LocalService\AppData\Local\FontCache. Restart the service: net start FontCache. This clears a corrupted font cache that can cause this error.
  • Use a third-party font manager. If you have hundreds of fonts, a manager like NexusFont can help identify conflicts.
  • Check for malware. Rare, but I've seen a virus replace a font file with a non-functioning one. Run a full scan with Malwarebytes or Defender.

Prevention tips

  • Keep fonts updated. Windows Update often includes font fixes. Don't skip them.
  • Avoid mixing fonts from different OS versions. Don't copy fonts from Windows 7 to Windows 11—they can have different character mappings.
  • Use Unicode-compliant apps. Stick with modern software that handles UTF-8 natively. Old tools like Notepad (not Notepad++) still use ANSI and can trigger this.
  • Back up your registry before making locale changes. I always export the Nls key before tweaking.

If you're still stuck after all this, try posting on a sysadmin forum with the exact character that's failing—someone else has probably seen it before.

Was this solution helpful?