我需要完全更改系统位置并将其应用于所有帐户。
我现在如何更改线程,但在这种情况下,我需要实际更改所有用户帐户的系统位置。
它将是一个运行Windows的设备,它将具有一个Windows服务,当它启动时将使一个Web服务回调到一个集中托管的系统,它将告诉它它的配置,包括它的位置。然后需要更改它的位置(应用于所有用户帐户),然后重新启动。
我知道如何从控制面板执行此操作,但我需要在C#
中实际执行此操作答案 0 :(得分:0)
您可以致电SetUserGeoID来设置当前用户的地理语言。您可以通过调用SetLocaleInfo来设置用户的区域设置。但是,这仅适用于运行当前程序的用户帐户。
您需要使用P / Invoke来调用这些方法。 pinvoke.net可能有原型和示例。
为了复制给其他用户,我不确定。听起来像是你用WMI(Windows Management Instrumentation)做的事情。
答案 1 :(得分:0)
所有设置都包含在注册表中。 [HKEY_USERS.DEFAULT \ Control Panel \ International]位置。因此,您可以在C#中更改它们并重新启动系统。