enumCalendarInfoExEx 函数 (winnls.h)

枚举由名称指定的区域设置的日历信息。

注意如果设计为仅在 Windows Vista 及更高版本上运行,应用程序应优先调用此函数,而不是 EnumCalendarInfo 或 EnumCalendarInfoEx

 
注意 此函数可以枚举版本之间发生更改的数据,例如,由于自定义区域设置。 如果应用程序必须保留或传输数据,请参阅 使用持久区域设置数据
 

语法

BOOL EnumCalendarInfoExEx(
  [in]           CALINFO_ENUMPROCEXEX pCalInfoEnumProcExEx,
  [in, optional] LPCWSTR              lpLocaleName,
  [in]           CALID                Calendar,
  [in, optional] LPCWSTR              lpReserved,
  [in]           CALTYPE              CalType,
  [in]           LPARAM               lParam
);

参数

[in] pCalInfoEnumProcExEx

指向应用程序定义的回调函数的指针。 有关详细信息,请参阅 EnumCalendarInfoProcExEx

[in, optional] lpLocaleName

指向 区域设置名称或以下预定义值之一的指针。

[in] Calendar

指定 请求其信息的日历的日历标识符。 请注意,此标识符可以ENUM_ALL_CALENDARS,以枚举与区域设置关联的所有日历。

[in, optional] lpReserved

保留;必须为 NULL

[in] CalType

日历信息的类型。 有关详细信息,请参阅 日历类型信息。 每次调用此函数只能指定一个日历类型,但注明的情况除外。

[in] lParam

应用程序提供的参数,用于传递给回调函数。 此值对于多线程应用程序特别有用。

返回值

如果成功,则返回非零值,否则返回 0。 若要获取扩展的错误信息,应用程序可以调用 GetLastError,这会返回以下错误代码之一:

  • ERROR_INVALID_FLAGS。 为标志提供的值无效。
  • ERROR_INVALID_PARAMETER。 任何参数值都无效。

注解

此函数枚举指定区域设置或单个请求日历的所有适用日历的日历信息,具体取决于 Calendar 参数的值。 函数通过调用指定的应用程序定义的回调函数来枚举日历信息。 它向回调函数传递指向缓冲区的指针,该缓冲区包含请求的日历信息、日历标识符和对多线程应用程序有用的应用程序定义参数。 此过程一直持续到 EnumCalendarInfoExExEx 找到 最后一个适用的日历或回调函数返回 FALSE

从 Windows 8 开始:如果你的应用将语言标记从 Windows.Globalization 命名空间传递到此函数,它必须首先通过调用 ResolveLocaleName 来转换标记。

要求

要求
最低受支持的客户端 Windows Vista [桌面应用 | UWP 应用]
最低受支持的服务器 Windows Server 2008 [桌面应用 | UWP 应用]
目标平台 Windows
标头 winnls.h (包括 Windows.h)
Library Kernel32.lib
DLL Kernel32.dll

另请参阅

日历类型信息

EnumCalendarInfo

EnumCalendarInfoEx

EnumCalendarInfoProcExEx

EnumDateFormatsExExEx

国家/地区语言支持

国家/地区语言支持函数