Mapping Locale Data

NLS includes a number of API functions that your applications can use to map locale data between locale identifiers and locale names, and list neutral locales. This topic discusses the use of these functions on Windows Vista and later and on pre-Windows Vista operating systems (sometimes called "downlevel systems").

Map Locale Data on Windows Vista and Later

NLS provides several locale mapping functions for use by applications that you develop to run on Windows Vista and later. It also includes functions that your applications can use to enumerate neutral locales.

Use the Standard Conversion Functions for Data Mapping

To map between a locale name and a locale identifier, your application can call the LocaleNameToLCID function. The application uses LCIDToLocaleName to map between a locale identifier and a locale name.

List Neutral Locales

To enumerate neutral locales for Windows 7 and later, your application can call EnumSystemLocalesEx with dwFlags set to LOCALE_NEUTRALDATA. It can also use GetLocaleInfoEx with LCType set to LOCALE_INEUTRAL.

Map Locale Data on Pre-Windows Vista Operating Systems

NLS includes a direct-link library (DLL) to use for applications that you develop to run on pre-Windows Vista operating systems. The DLL supports both conversion and listing functions for data mapping.

Note  Applications that only run on Windows Vista and later should not use the downlevel mapping or listing functions.

Use the Downlevel Conversion Functions for Data Mapping

Your application targeted at a downlevel system can call the DownlevelLCIDToLocaleName function to convert a locale identifier to a locale name. If it needs to convert a locale name to a locale identifier, it should call DownlevelLocaleNameToLCID.

Use the Downlevel Listing Functions to Enumerate Neutral Locales

Your application should call the DownlevelGetParentLocaleLCID to retrieve the locale identifier of the parent for a locale. If the application needs to get the locale name of the parent for the locale, it should call DownlevelGetParentLocaleName.

Related topics

Using National Language Support
Locale Identifiers
Locale Names