Win11通过注册表或者kernel32.dll的SetUserGeoName等方式设置国家或地区后重启过一会就自动变回原来的值

发布时间 2023-10-09 15:34:45作者: log9527

最近同事 panwangvie 尝试通过代码设置国家或地区,尝试过注册表或者kernel32.dll的SetUserGeoName等方式设置,重启过一会就自动变回原来的值

我也尝试了以下方式均不行:

1. 一开始怀疑是自动时钟影响,所以把自动时钟关闭了

2. 然后觉得有可能是网络更新了系统什么信息,尝试关闭网络仍然不行

3. 又尝试了将服务Geolocation Service禁用,仍然不行

最后 panwangvie 在官网微软官网找到通过PowerShell的方式设置起了作用

https://learn.microsoft.com/zh-cn/powershell/module/international/set-winhomelocation?view=windowsserver2022-ps&viewFallbackFrom=win10-ps

Set-WinHomeLocation -0x2d

入参为地理标识符,可用从https://learn.microsoft.com/zh-cn/windows/win32/intl/table-of-geographical-locations?redirectedfrom=MSDN查询