SetUserGeoName 函数 (winnls.h)

将当前用户的地理位置设置为指定的双字母国际标准化组织 (ISO) 3166-1 代码或数字联合国 (联合国) 系列 M,编号 49 (M.49) 代码。

语法

BOOL SetUserGeoName(
  [in] PWSTR geoName
);

参数

[in] geoName

要为当前用户设置的地理位置的双字母 ISO 3166-1 或数字 UN M.49 代码。 若要获取操作系统上可用的代码,请调用 EnumSystemGeoNames

返回值

如果成功,则返回 TRUE ,否则返回 FALSE

如果此函数不成功,请调用 GetLastError,这可能会返回以下错误代码之一:

返回代码 说明
ERROR_ACCESS_DISABLED_BY_POLICY
计算机或用户的组策略已禁止此操作。
ERROR_INTERNAL_ERROR
函数中发生意外错误。
ERROR_INVALID_PARAMETER
参数值无效。

注解

此函数将特定用户(而不是特定应用程序)的地理位置写入注册表。 此操作会影响用户运行的其他应用程序的行为。 通常,仅在用户显式请求更改时调用此函数,而不是纯粹出于特定于应用程序的原因。

有关双字母 ISO 3166-1 代码的信息,请参阅 国家/地区代码 - ISO 3166。 有关数字 UN M.49 代码的信息,请参阅 用于统计使用的标准国家或地区代码 (M49)

SetUserGeoName 适用于旨在更改用户设置的应用程序,例如 Windows 设置应用。 其他应用程序不应调用此函数。

要求

要求
最低受支持的客户端 Windows 10版本 1709 [仅限桌面应用]
最低受支持的服务器 Windows Server 2016 [仅限桌面应用]
目标平台 Windows
标头 winnls.h (包括 Windows.h)
Library Kernel32.lib
DLL Kernel32.dll

另请参阅

EnumSystemGeoNames

GetUserDefaultGeoName

国家语言支持

国家语言支持函数

SetUserGeoID