小甲鱼 发表于 2016-8-24 03:26:48

EnumCalendarInfoExEx

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

原文链接 -> 传送门

函数功能:

EnumCalendarInfoExEx 函数用于枚举由名称指定的区域设置的日历信息。

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

注意2:此函数可以枚举版本之间发生改变的数据,例如,由于自定义区域设置发生更改的数据。如果您的应用程序必须保存或传输数据,请参阅 Using Persistent Locale Data。


API 函数原型:

注释:_In_ 说明该参数是输入的,_opt_ 说明该参数是可选的。
BOOL EnumCalendarInfoExEx(
_In_   CALINFO_ENUMPROCEXEX pCalInfoEnumProcExEx,
_In_opt_ LPCWSTR            lpLocaleName,
_In_   CALID                Calendar,
_In_opt_ LPCWSTR            lpReserved,
_In_   CALTYPE            CalType,
_In_   LPARAM               lParam
);

参数解析:


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

2. 更多信息,请查阅 EnumCalendarInfoProcExEx
lpLocaleName指向一个区域设置名称的指针,或者下列预定义值之一:

[*]LOCALE_NAME_INVARIANT
[*]LOCALE_NAME_SYSTEM_DEFAULT
[*]LOCALE_NAME_USER_DEFAULT

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

2. 注意:此标识符可以是 ENUM_ALL_CALENDARS,枚举与区域设置相关联的所有日历
lpReserved 不使用,该参数值必须为 NULL
CalType1. 日历信息的类型

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

3. 只有一种日历类型可以指定在每次调用此函数,除了指出地方
lParam1. 要传递给回调函数的应用程序提供参数

2. 此值是为多线程应用程序尤其有用


返回值:

如果函数成功,返回一个非零值;否则返回 0。为了获得更多的错误信息,应用程序可以调用 GetLastError 函数,其可以返回下列错误代码之一:


[*]ERROR_INVALID_FLAGS。为标志提供的值不是有效的。
[*]ERROR_INVALID_PARAMETER。任何参数的值是无效的。


备注:

1. 此函数枚举所有适用的日历指定的区域设置,或为一个单一的请求日历,日历参数的值根据日历信息。通过调用指定的应用程序定义的回调函数,函数枚举日历信息。它传递给回调函数一个包含请求的日历信息的指针、 日历标识符和应用程序定义的参数,该参数对多线程应用程序是有用的。此过程继续直到 EnumCalendarInfoExEx 发现最后适用日历或回调函数返回 FALSE。

2. 从 Windows8 开始:如果您的应用程序从 Windows.Globalization 命名空间传递语言标记给函数,它首先必须通过调用 ResolveLocaleName 函数转换标记。


需求:


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


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

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