The SetLocaleInfo function sets an item of locale information. It does so by making an entry in the process portion of the locale table. This setting only affects the user override portion of the locale settings; it does not set the system defaults.
Only certain types of locale information, or LCTYPE values, can be set by this function. See the following Remarks section for a list of valid LCTYPE values.
The locale information is always passed in as a null-terminated Unicode string in the Unicode (W) version of the function, and as a null-terminated ANSI string in the ANSI (A) version. No integers are allowed by this function; any numeric values must be specified as Unicode or ANSI text. Each LCTYPE has a particular format, as noted in Locale Identifiers.
BOOL SetLocaleInfo(
LCID Locale, | // locale identifier |
LCTYPE LCType, | // type of information to set |
LPCTSTR lpLCData | // pointer to information to set |
); |
Parameters
Locale
Specifies the locale whose information the function will set.
LCType
Specifies the type of locale information to be set by the function. Note that only one LCTYPE may be specified per call. Not all LCTYPE values are valid; see the list of valid LCTYPE values in the following Remarks section.
lpLCData
Points to a null-terminated string containing the locale information the function will set. This should be an LPWSTR for the Unicode (W) version of the function, and an LPSTR for the ANSI (A) version. The information must be in the specified LCTYPE's particular format.
Return Values
If the function succeeds, the return value is nonzero.
If the function fails, the return value is zero. To get extended error information, call GetLastError. GetLastError may return one of the following error codes:
ERROR_INVALID_ACCESS | |
ERROR_INVALID_FLAGS | |
ERROR_INVALID_PARAMETER |
Remarks
The following LCTYPE values are valid for this function:
LOCALE_ICALENDARTYPE | LOCALE_SDATE |
LOCALE_ICURRDIGITS | LOCALE_SDECIMAL |
LOCALE_ICURRENCY | LOCALE_SGROUPING |
LOCALE_IDIGITS | LOCALE_SLIST |
LOCALE_IFIRSTDAYOFWEEK | LOCALE_SLONGDATE |
LOCALE_IFIRSTWEEKOFYEAR | LOCALE_SMONDECIMALSEP |
LOCALE_ILZERO | LOCALE_SMONGROUPING |
LOCALE_IMEASURE | LOCALE_SMONTHOUSANDSEP |
LOCALE_INEGCURR | LOCALE_SNEGATIVESIGN |
LOCALE_INEGNUMBER | LOCALE_SPOSITIVESIGN |
LOCALE_ITIME | LOCALE_SSHORTDATE |
LOCALE_S1159 | LOCALE_STHOUSAND |
LOCALE_S2359 | LOCALE_STIME |
LOCALE_SCURRENCY | LOCALE_STIMEFORMAT |
See Also