Поделиться через


Функция EnumTimeFormatsA (winnls.h)

Перечисляет форматы времени, доступные для языкового стандарта, указанного идентификатором.

Примечание По соображениям взаимодействия приложение должно предпоч есть функцию enumTimeFormatsEx, чтобы EnumTimeFormats, так как корпорация Майкрософт переносится на использование имен языков, а не идентификаторов языков для новых языков. Любое приложение, работающее только в Windows Vista и более поздних версиях, должно использовать EnumTimeFormatsEx.
 

Синтаксис

BOOL EnumTimeFormatsA(
  [in] TIMEFMT_ENUMPROCA lpTimeFmtEnumProc,
  [in] LCID              Locale,
  [in] DWORD             dwFlags
);

Параметры

[in] lpTimeFmtEnumProc

Указатель на функцию обратного вызова, определяемую приложением. Дополнительные сведения см. в разделе EnumTimeFormatsProc.

[in] Locale

идентификатор языкового стандарта, указывающий языковой стандарт, для которого требуется получить сведения о формате времени. Вы можете использовать макрос MAKELCID для создания идентификатора языкового стандарта или использования одного из следующих предопределенных значений.

[in] dwFlags

Формат времени. Этот параметр может указать сочетание любого из следующих значений.

Флаг Значение
0
Используйте длинный формат текущего пользователя.
TIME_NOSECONDS
Windows 7 и более поздних версий: используйте короткий формат времени текущего пользователя.
Примечание Это значение не будет работать с версией ANSI этой функции, EnumTimeFormatsA.
 
LOCAL_USE_CP_ACP
Указанная в версии ANSI этой функции, EnumTimeFormatsA (не рекомендуется), чтобы использовать кодовую страницу Windows ANSI по умолчанию (ACP) вместо кодовой страницы языкового стандарта.

Возвращаемое значение

Возвращает ненулевое значение в случае успешного выполнения или 0 в противном случае. Чтобы получить расширенные сведения об ошибке, приложение может вызывать GetLastError, что может возвращать один из следующих кодов ошибок:

  • ERROR_INVALID_FLAGS. Значения, предоставленные для флагов, недопустимы.
  • ERROR_INVALID_PARAMETER. Любое из значений параметров было недопустимым.

Замечания

Функция перечисляет форматы времени, передав указатель на буфер, содержащий формат времени в определяемую приложением функцию обратного вызова. Первое значение перечисления всегда является значением пользователя по умолчанию (переопределение). Функция продолжает перечисление до тех пор, пока не будет найден формат времени, или функция обратного вызова возвращает FALSE.

Эта функция может перечислять данные из пользовательских языковых стандартов . Данные не гарантированы одинаковыми с компьютера на компьютер или между запусками приложения. Если приложение должно сохранять или передавать данные, см. использованиеданных постоянного языкового стандарта.

Если версия этой функции ANSI используется с идентификатором языкового стандарта юникода, вызов может завершиться успешно, так как система использует системную кодовую страницу. Однако символы, которые не определены в системной кодовой странице, отображаются в строке как вопросительный знак ("?"). Обратите внимание, что любые новые значения для dwFlags в будущем не будут работать с версией ANSI.

Заметка

Заголовок winnls.h определяет EnumTimeFormats как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Windows 2000 Профессиональный [только классические приложения]
минимальный поддерживаемый сервер Windows 2000 Server [только классические приложения]
целевая платформа Виндоус
заголовка winnls.h (включая Windows.h)
библиотеки Kernel32.lib
DLL Kernel32.dll

См. также

EnumTimeFormatsEx

EnumTimeFormatsProc

поддержки национальных языков

функции поддержки национальных языков