小甲鱼 发表于 2016-5-18 16:24:22

EnumCalendarInfoEx

注:本文档由 CET-6-WPW 翻译,小甲鱼校对。

原文链接 -> 传送门

函数功能:

EnumCalendarInfoEx 函数用于通过标识符枚举指定区域设置的日历信息。

注意:任何运行在 Windows Vista 和之后版本上的应用程序应该使用 EnumCalendarInfoExEx 函数来代替这个函数。


API 函数原型:

注释:_In_ 说明该参数是输入的。
BOOL EnumCalendarInfoEx(
_In_ CALINFO_ENUMPROCEX pCalInfoEnumProcEx,
_In_ LCID               Locale,
_In_ CALID            Calendar,
_In_ CALTYPE            CalType
);

参数解析:


参数 含义
pCalInfoEnumProcEx1. 指向应用程序自定义的回调函数的指针

2. 更多信息,请参见 EnumCalendarInfoProcEx 函数
Locale1. 指定要为其检索日历信息的区域设置的区域设置标识符

2. 你可以使用 MAKELCID 宏来创建一个标识符或使用以下预定义的值之一:

[*]LOCALE_INVARIANT
[*]LOCALE_SYSTEM_DEFAULT
[*]LOCALE_USER_DEFAULT

3. Windows Vista 及以后版本:以下自定义区域设置标识符也被支持:

[*]LOCALE_CUSTOM_DEFAULT
[*]LOCALE_CUSTOM_UI_DEFAULT
[*]LOCALE_CUSTOM_UNSPECIFIED

Calendar1. 指定为其请求信息的日历的日历标识符

2. 注意:此标识符可以是 ENUM_ALL_CALENDARS,枚举与区域设置相关联的所有日历
CalType1. 指定日历信息的类型

2. 每次调用该函数只指定一种日历类型,除了备注

3. 更多信息,请参阅 Calendar Type Information


返回值:

若函数成功,返回是非 0;否则返回值为 0。

为了获得更多的错误信息,程序可以调用 GetLastError 函数,其可以返回下列错误代码:

[*]ERROR_INVALID_FLAGS:提供的标记值是无效的
[*]ERROR_INVALID_PARAMETER:任何参数值是无效的


备注:

1. 此函数为指定的区域设置,枚举所有适用的日历的日历信息,或为一个单一的请求日历,依赖于 Calendar 参数的值。通过调用指定的应用程序定义的回调函数来枚举日历信息。它将传递给回调函数一个指针,指向包含请求的日历信息的缓冲区。此过程继续直到 EnumCalendarInfoEx 发现最后适用日历或回调函数返回 FALSE。

2. 此函数可以枚举自定义区域设置的数据。从计算机到计算机或运行的应用程序之间,数据不能保证相同。如果您的应用程序必须持续或传输数据,请参见 Using Persistent Locale Data。

3. 当此函数的 ANSI 版本通过仅 Unicode 的区域设置标识符来使用时,函数可以成功,因为操作系统使用系统代码页。但是,在系统代码页中未定义的字符在字符串中显示为问号(?)。


需求:


Minimum supported client Windows 2000 专业版 [仅桌面应用程序]
Minimum supported server Windows 2000 服务器版 [仅桌面应用程序]
Header Winnls.h (包含于 Windows.h)
Library Kernel32.lib
DLL Kernel32.dll
Unicode and ANSI namesEnumCalendarInfoExW (Unicode) 和 EnumCalendarInfoExA (ANSI)


【API档案】版权归鱼C工作室(www.fishc.com)所有,转载请注明来源。

页: [1]
查看完整版本: EnumCalendarInfoEx