Windows apps
Collapse the table of content
Expand the table of content
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

EnumDateFormats function

Enumerates the long date, short date, or year/month formats that are available for a specified locale.

Note   To receive a calendar identifier in addition to date format information, the application should use the EnumDateFormatsEx 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 or later should use EnumDateFormatsExEx in preference to EnumDateFormats.


BOOL EnumDateFormats(
  _In_ DATEFMT_ENUMPROC lpDateFmtEnumProc,
  _In_ LCID             Locale,
  _In_ DWORD            dwFlags


lpDateFmtEnumProc [in]

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

Locale [in]

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

dwFlags [in]

Flag specifying date formats. For detailed definitions, see the dwFlags parameter of EnumDateFormatsExEx.

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.


For details of operation of this function, see Remarks in EnumDateFormatsEx.

Note  To enumerate the date formats for locales with alternate calendars, the application should use EnumDateFormatsEx.


Minimum supported client

Windows 2000 Professional [desktop apps only]

Minimum supported server

Windows 2000 Server [desktop apps only]


Winnls.h (include Windows.h)





Unicode and ANSI names

EnumDateFormatsW (Unicode) and EnumDateFormatsA (ANSI)

See also

National Language Support
National Language Support Functions



© 2018 Microsoft