2012-02-23 76 views
1

我有一个密封的Windows XP嵌入式设备,始终启动相同的窗口设置。当我的软件启动时,它需要将机器的时区设置为用户可配置的设置。不幸的是,我发现即使我正在更新时区,检索系统时间的.net中的所有方法都不会显示出变化。如何清除.net 2.0中的缓存时区信息?

有点挖掘表明在.net 3.5和4.0有一个方法来清除缓存:system.timezoneinfo.clearcacheddata()。我正在使用.net 2.0,但是如何在.net 2.0中解决这个问题?

在主应用程序运行之前运行第二块软件来设置时区的唯一选项(重新加载软件似乎可以解决此问题)?

+0

可能重复http://stackoverflow.com/questions/296918/net-datetime-now-returns-incorrect-time-when-time-zone-is-change) – 2012-02-23 13:18:56

+0

绝对 - 当我搜索时我找不到关于该主题的任何内容! – 2012-02-23 13:59:53

回答

4

没关系;我发现a solution that works一路回.NET V1.0:

System.Globalization.CultureInfo.CurrentCulture.ClearCachedData(); 
的[.NET DateTime.Now返回时,时区改变不正确的时间(