以编程方式更改系统位置,然后重新启动

本文关键字:然后 重新启动 位置 系统 编程 方式更 | 更新日期: 2023-09-27 18:08:33

我需要完全更改系统位置,并将其应用于所有帐户。

我现在知道如何更改线程,但在这种情况下,我需要实际更改所有用户帐户的系统位置。

它将是一个运行windows的设备,它将有一个windows服务,当它启动时,将使一个web服务调用回一个中央托管系统,将告诉它它的配置,包括它的位置。然后它需要改变它的位置(适用于所有用户帐户),然后重新启动自己。

我知道如何从控制面板中做到这一点,但我需要在c#中务实地做到这一点

以编程方式更改系统位置,然后重新启动

可以通过调用SetUserGeoID来设置当前用户的地理语言。你可以通过调用SetLocaleInfo来设置用户的区域设置。但是,这只是针对正在运行当前程序的用户帐户。

你需要使用p/Invoke来调用这些方法。在pinvoke.net上可能有原型和示例。

为了复制给其他用户,我不确定。

所有设置都包含在注册表中。[HKEY_USERS。默认'控制面板'国际]位置。所以你可以在c#中修改它们并重新启动系统。