EnumCalendarInfoA function (winnls.h)

Enumerates calendar information for a specified locale.

Note  To receive a calendar identifier in addition to calendar information, the application should use the EnumCalendarInfoEx function. Another reason for preferring this function is that Microsoft is migrating toward the use of locale names instead of locale identifiers for new locales, for interoperability reasons.
Note  Any application that will be run only on Windows Vista and later should use EnumCalendarInfoExEx in preference to EnumCalendarInfo.


BOOL EnumCalendarInfoA(
  [in] CALINFO_ENUMPROCA lpCalInfoEnumProc,
  [in] LCID              Locale,
  [in] CALID             Calendar,
  [in] CALTYPE           CalType


[in] lpCalInfoEnumProc

Pointer to an application-defined callback function. For more information, see EnumCalendarInfoProc.

[in] Locale

Locale identifier that specifies the locale for which to retrieve calendar information. You can use the MAKELCID macro to create a locale identifier or use one of the following predefined values.

[in] Calendar

Calendar identifier that specifies the calendar for which information is requested. Note that this identifier can be ENUM_ALL_CALENDARS, to enumerate all calendars that are associated with the locale.

[in] CalType

Type of calendar information. For more information, see Calendar Type Information. Only one calendar type can be specified per call to this function, except where noted.

Return value

Returns a nonzero value if successful, or 0 otherwise. To get extended error information, the application can call GetLastError, which can return one of the following error codes:

  • ERROR_INVALID_FLAGS. The values supplied for flags were not valid.
  • ERROR_INVALID_PARAMETER. Any of the parameter values was invalid.


See Remarks for EnumCalendarInfoEx.


The winnls.h header defines EnumCalendarInfo as an alias which automatically selects the ANSI or Unicode version of this function based on the definition of the UNICODE preprocessor constant. Mixing usage of the encoding-neutral alias with code that not encoding-neutral can lead to mismatches that result in compilation or runtime errors. For more information, see Conventions for Function Prototypes.


Requirement Value
Minimum supported client Windows 2000 Professional [desktop apps only]
Minimum supported server Windows 2000 Server [desktop apps only]
Target Platform Windows
Header winnls.h (include Windows.h)
Library Kernel32.lib
DLL Kernel32.dll

See also

Calendar Type Information






National Language Support

National Language Support Functions