以编程方式更改系统位置,然后重新启动
本文关键字:然后 重新启动 位置 系统 编程 方式更 | 更新日期: 2023-09-27 18:08:33
我需要完全更改系统位置,并将其应用于所有帐户。
我现在知道如何更改线程,但在这种情况下,我需要实际更改所有用户帐户的系统位置。
它将是一个运行windows的设备,它将有一个windows服务,当它启动时,将使一个web服务调用回一个中央托管系统,将告诉它它的配置,包括它的位置。然后它需要改变它的位置(适用于所有用户帐户),然后重新启动自己。
我知道如何从控制面板中做到这一点,但我需要在c#中务实地做到这一点
可以通过调用SetUserGeoID来设置当前用户的地理语言。你可以通过调用SetLocaleInfo来设置用户的区域设置。但是,这只是针对正在运行当前程序的用户帐户。
你需要使用p/Invoke来调用这些方法。在pinvoke.net上可能有原型和示例。
为了复制给其他用户,我不确定。
所有设置都包含在注册表中。[HKEY_USERS。默认'控制面板'国际]位置。所以你可以在c#中修改它们并重新启动系统。