Microsoft KB Archive/246007

From BetaArchive Wiki
< Microsoft KB Archive
Revision as of 13:49, 21 July 2020 by X010 (talk | contribs) (Text replacement - """ to """)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

INFO: The Difference Between the System Locale and the User Locale


The information in this article applies to:

  • Microsoft Win32 Software Development Kit (SDK)


Although the system locale and the user locale sometimes seem indistinguishable, they have many differences.


The system locale determines which code pages (ANSI, MS-DOS, and Macintosh) are used on the system by default. Changing the system locale also installs the necessary bitmap font files to support applications in the language you selected. This is a per-system setting, and requires that you restart your computer (reboot) to change the setting. You can select a system locale only if the appropriate language group is installed; for example, you can't change the system locale to Chinese if your operating system is English Windows NT with no Chinese support.

An application can retrieve the system locale by calling GetSystemDefaultLCID. The system locale can be changed from Control Panel. Double-click the Regional Settings icon, and then change the system locale value (and then restart your computer).

The user locale determines which default settings a user wants to use for formatting dates, times, currency, and large numbers. The user locale is not the language. The only influence the user locale has on the language is on the names of the days and months. For example, if you use the long date format to display "November 25, 1998," the "November" string will change based on the user locale.

Changing the user locale automatically adds an Input Locale with the default settings for the associated language.

An application should use these settings to present data to the user (and most applications do this); however, in some cases it might make sense for an application to use a fixed locale for displaying data. This can be accomplished by setting the Thread Locale to a fixed value during initialization of the application.

The user locale is retrieved by calling GetUserDefaultLCID. From Control Panel, double-click the Regional Settings icon.

NOTE: You do not need to restart your computer if you change the user locale.

Additional query words:

Keywords : kbNLS kbLocalization kbGrpDSIntl kbDSupport
Issue type : kbinfo
Technology : kbWin32SDKSearch kbAudDeveloper kbSDKSearch kbWin32sSearch

Last Reviewed: December 17, 1999
© 2001 Microsoft Corporation. All rights reserved. Terms of Use.