我正在寻找.NET中的代码(C#) 更改“控制面板”的“区域选项”中的系统日期/时间格式 对于Windows XP。
答案 0 :(得分:2)
要更改日期时间格式,请查看此http://social.msdn.microsoft.com/Forums/en-US/vcgeneral/thread/263d73b2-8611-4398-9f09-9aa76bbf325e/
您基本上需要使用本机Win API方法SetLocaleInfo
。
答案 1 :(得分:1)
如果您想暂时更改区域设置,可以使用以下代码:
System.Globalization.CultureInfo oldCI = System.Threading.Thread.CurrentThread.CurrentCulture;
System.Threading.Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US");
...
YOUR CODE
...
System.Threading.Thread.CurrentThread.CurrentCulture = oldCI;
要了解哪种区域设置最佳,请检查:
答案 2 :(得分:0)
如果我理解正确,您希望以编程方式永久地更改区域设置,而不仅仅是针对当前流程。
您需要的信息存储在注册表中。对于密钥下的当前用户:
HKCU\Control Panel\International
新用户或没有个人资料的用户的默认设置:
HKEY_USERS\.Default\Control Panel\International
您可以以编程方式更改注册表值,然后按a response to this question中所述广播WM_SETTINGCHANGE消息。
答案 3 :(得分:-1)
public void changedatetimeformat()
{
RegistryKey regkey = Registry.CurrentUser.OpenSubKey(@"Control Panel\International", true);
regkey.SetValue("sShortDate", "dd/MM/yyyy");
regkey.SetValue("sLongDate", "dd/MM/yyyy");
}
然后 重新启动系统