Unicode in MFC


The new home for Visual Studio documentation is Visual Studio 2017 Documentation on docs.microsoft.com.

The latest version of this topic can be found at Unicode in MFC.

MFC supports the Unicode standard for encoding wide characters on Windows NT, Windows 2000, and Windows XP platforms. Unicode applications cannot run on Windows 98 platforms.

The Unicode versions of the MFC libraries are described below:

Static Link Libraries

UAFXCW.lib, .pdbUAFXCWD.lib, .pdbUnicode MFC static link library

Dynamic-Link Libraries

MFC100U.lib, .dbg, def, .dll, .map, .pdb, .prfMFC100UD.lib, .def, .dll, .map, .pdbUnicode MFC import library (see notes below for explanation of file extensions)
MFCS100U.lib, .pdbMFCS100UD.lib, .pdbUnicode MFC import library containing code that must be statically linked in an application or DLL

File Types

  • Import library files have the extension (.lib).

  • Dynamic-link library files have the extension (.dll).

  • Module definition (.def) files are text files that contain statements for defining an .exe or .dll.

  • Map (.map) files are text files that contain information that the linker uses when linking a program.

  • Library (.lib) files are used in conjunction with the DLL versions of MFC. These files contain code that must be statically linked in the application or DLL.

  • Program database (.pdb) files contain debugging and project state information.

  • Debug (.dbg) files contain information (COFF FPO, and CodeView) that the Visual C++ Debugger uses.

For detailed information on naming conventions, see Library Naming Conventions.

For information on using Unicode with MFC, see Strings: Unicode and Multibyte Character Set (MBCS) Support.

General MFC Topics