EnumTimeFormatsA 函数 (winnls.h)
枚举可用于由标识符指定的区域设置的时间格式。
语法
BOOL EnumTimeFormatsA(
[in] TIMEFMT_ENUMPROCA lpTimeFmtEnumProc,
[in] LCID Locale,
[in] DWORD dwFlags
);
参数
[in] lpTimeFmtEnumProc
指向应用程序定义的回调函数的指针。 有关详细信息,请参阅 EnumTimeFormatsProc。
[in] Locale
区域设置标识符,用于指定要为其检索时间格式信息的区域设置。 可以使用 MAKELCID 宏创建区域设置标识符或使用以下预定义值之一。
- LOCALE_CUSTOM_DEFAULT
- LOCALE_CUSTOM_UI_DEFAULT
- LOCALE_CUSTOM_UNSPECIFIED
- LOCALE_INVARIANT
- LOCALE_SYSTEM_DEFAULT
- LOCALE_USER_DEFAULT
[in] dwFlags
时间格式。 此参数可以指定以下任一值的组合。
返回值
如果成功,则返回非零值,否则返回 0。 若要获取扩展的错误信息,应用程序可以调用 GetLastError,这会返回以下错误代码之一:
- ERROR_INVALID_FLAGS。 为标志提供的值无效。
- ERROR_INVALID_PARAMETER。 任何参数值都无效。
言论
该函数通过将指针传递给包含时间格式的缓冲区传递给应用程序定义的回调函数来枚举时间格式。 枚举中的第一个值始终是用户默认值(override) 值。 该函数将继续枚举,直到找到最后一次格式或回调函数返回 FALSE。
此函数可以从 自定义区域设置枚举数据。 数据不保证从计算机到计算机或应用程序运行之间相同。 如果应用程序必须持久保存或传输数据,请参阅 使用持久区域设置数据。
当此函数的 ANSI 版本与仅 Unicode 区域设置标识符一起使用时,调用可能会成功,因为系统使用系统代码页。 但是,系统代码页中未定义的字符以问号(“?”)的形式显示在字符串中。
请注意,将来引入 的
注意
winnls.h 标头将 EnumTimeFormats 定义为一个别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将中性编码别名与不中性编码的代码混合使用可能会导致编译或运行时错误不匹配。 有关详细信息,请参阅函数原型的
要求
要求 | 价值 |
---|---|
最低支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
支持的最低服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | 窗户 |
标头 | winnls.h (包括 Windows.h) |
库 | Kernel32.lib |
DLL | Kernel32.dll |