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


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

Перечисляет кодовые страницы, установленные или поддерживаемые операционной системой.

Синтаксис

BOOL EnumSystemCodePagesA(
  [in] CODEPAGE_ENUMPROCA lpCodePageEnumProc,
  [in] DWORD              dwFlags
);

Параметры

[in] lpCodePageEnumProc

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

[in] dwFlags

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

Значение Значение
CP_INSTALLED
Перечисление только установленных кодов.
CP_SUPPORTED
Перечисление всех поддерживаемых кодных страниц.

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

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

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

Комментарии

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

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

Примечание

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

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Профессиональная [классические приложения | Приложения UWP]
Минимальная версия сервера Windows 2000 Server [классические приложения | Приложения UWP]
Целевая платформа Windows
Header winnls.h (включая Windows.h)
Библиотека Kernel32.lib
DLL Kernel32.dll

См. также

EnumCodePagesProc

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

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