SetUserGeoName 函数 (winnls.h)

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

Syntax

BOOL SetUserGeoName(
  [in] PWSTR geoName
);

参数

[in] geoName

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

返回值

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

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

返回代码 Description
ERROR_ACCESS_DISABLED_BY_POLICY
计算机或用户的组策略禁止此作。
ERROR_INTERNAL_ERROR
函数中出现意外错误。
ERROR_INVALID_PARAMETER
参数值无效。

注解

此函数写入注册表的特定用户的地理位置,而不是特定应用程序。 此作会影响用户运行的其他应用程序的行为。 作为规则,仅在用户显式请求更改时调用此函数,但并非出于特定于应用程序的原因。

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

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

要求

Requirement 价值
最低支持的客户端 Windows 10 版本 1709 [仅限桌面应用]
支持的最低服务器 Windows Server 2016 [仅限桌面应用]
目标平台 Windows操作系统
Header winnls.h (包括 Windows.h)
Library Kernel32.lib
DLL Kernel32.dll

另请参阅

EnumSystemGeoNames

GetUserDefaultGeoName

国家语言支持

国家语言支持函数

SetUserGeoID