EnumSystemCodePagesW 函数 (winnls.h)

枚举操作系统所安装或支持的代码页。

语法

BOOL EnumSystemCodePagesW(
  [in] CODEPAGE_ENUMPROCW 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

当应用程序使用此函数来确定用于保存数据的相应代码页时,应尽可能使用 Unicode。 由于相关标准的实现不同,其他代码页不如供应商或操作系统之间的 Unicode 可移植。

注意

winnls.h 标头将 EnumSystemCodePages 定义为一个别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将中性编码别名与不中性编码的代码混合使用可能会导致编译或运行时错误不匹配。 有关详细信息,请参阅函数原型的 约定。

要求

要求 价值
最低支持的客户端 Windows 2000 Professional [桌面应用 |UWP 应用]
支持的最低服务器 Windows 2000 Server [桌面应用 |UWP 应用]
目标平台 窗户
标头 winnls.h (包括 Windows.h)
Kernel32.lib
DLL Kernel32.dll

另请参阅

EnumCodePagesProc

国家语言支持

国家语言支持函数