EnumLocalesProcEx callback function

An application-defined callback function that processes enumerated locale information provided by the EnumSystemLocalesEx function. The LOCALE_ENUMPROCEX type defines a pointer to this callback function. EnumLocalesProcEx is a placeholder for the application-defined function name.


BOOL CALLBACK EnumLocalesProcEx(
  _In_ LPWSTR lpLocaleString,
  _In_ DWORD  dwFlags,
  _In_ LPARAM lParam


lpLocaleString [in]

Pointer to a buffer containing a null-terminated locale name string.

dwFlags [in]

Flags defining locale information. Values for this parameter can include a binary OR of flags, but some flag combinations never occur. If the application specifies LOCALE_WINDOWS or LOCALE_ALTERNATE_SORTS, it can also specify LOCALE_REPLACEMENT so that the EnumSystemLocalesEx function can test to see if the locale is a replacement.

lParam [in]

An application-provided input parameter of EnumSystemLocalesEx. This value is especially useful for multi-threaded applications, since it can be used to pass thread-specific data to this callback function.

Return value

Returns TRUE to continue enumeration or FALSE otherwise.


An EnumLocalesProcEx function can carry out any desired task. The application registers this function by passing its address to the EnumSystemLocalesEx function.


Minimum supported client

Windows Vista [desktop apps | UWP apps]

Minimum supported server

Windows Server 2008 [desktop apps | UWP apps]


Winnls.h (include Windows.h)

See also

National Language Support
National Language Support Functions