DownlevelLCIDToLocaleName 函数

区域设置标识符转换为区域设置名称

注意

此函数仅供 Windows Vista 之前的操作系统上运行的应用程序使用。 使用它需要下载包。 仅在 Windows Vista 及更高版本上运行的应用程序应调用 LCIDToLocaleName 来检索区域设置名称。

 

语法

int DownlevelLCIDToLocaleName(
  _In_  LCID   Locale,
  _Out_ LPWSTR lpName,
  _In_  int    cchName,
  _In_  DWORD  dwFlags
);

参数

Locale [in]

要转换的区域设置标识符。 可以使用 MAKELCID 宏创建区域设置标识符。 此函数不支持非特定区域设置或以下特定区域设置标识符值。

lpName [out]

指向缓冲区的指针,此函数在其中检索区域设置名称。 如果 cchName 设置为 0,则该函数将检索 NULL。

cchName [in]

区域设置名称缓冲区的的大小(UTF-16 码位)。 应用程序将此参数设置为 0,以返回区域设置名称缓冲区所需的大小。

dwFlags [in]

指定要检索的名称类型的标志。 默认值为 DOWNLEVEL_LOCALE_NAME。

返回值

返回区域设置名称中的 UTF-16 码位计数,包括 null 终止字符(如果成功)。 如果函数成功且 cchName 的值为 0,则返回值是区域设置名称缓冲区所需的大小(以字符为单位,包括 null 字符)。

如果函数不成功,则返回 0。 若要获取扩展错误信息,可以让应用程序调用 GetLastError,它可能会返回以下错误代码之一

  • ERROR_INSUFFICIENT_BUFFER。 提供的缓冲区大小不够大,或者被错误地设置为 NULL。
  • ERROR_INVALID_FLAGS。 dwFlags 的值无效。
  • ERROR_INVALID_PARAMETER。 任意参数值无效。

备注

注意

此函数不支持自定义区域设置

 

所需的头文件和 DLL 是“Microsoft NLS 下层数据映射 API”下载的一部分,Microsoft 下载中心已不再提供该下载。 在 Windows 10 2019 年 5 月更新和更高版本上使用 ICU 全球化 API

要求

要求
最低受支持的客户端
Windows XP [仅限桌面应用]
最低受支持的服务器
Windows Server 2003 [仅限桌面应用]
可再发行组件
Windows XP SP2 和更高版本或 Windows Vista 上的 Microsoft NLS 下层数据映射 API
Header
Nlsdl.h
DLL
NlsMap.dll

另请参阅

区域语言支持

区域语言支持函数

映射区域设置数据

LCIDToLocaleName