Time 如何在Windows CE上保留系统时间设置

Time 如何在Windows CE上保留系统时间设置,time,windows-ce,Time,Windows Ce,我使用的是Windows CE 6.0设备,当我设置设备时间(或手动)时,拔下电源时,设备不记得设置 如何确保保存时间设置?我需要以编程方式将设备时间与服务器同步,这会在设备断电时造成困难 我猜问题可能是一些注册表设置没有被持久化,但我不确定这些设置是否存储了时间,我也没有找到一种方法来强制存储它们 谢谢你的建议 编辑:重新启动设备后,时钟没有完全重置,只是返回到错误的时间。重新启动后,设备的时间总是向前大约1小时。如果设备在断电时失去了时间,那是因为它没有电池供电的时钟,或者时钟的电池没电了。

我使用的是Windows CE 6.0设备,当我设置设备时间(或手动)时,拔下电源时,设备不记得设置

如何确保保存时间设置?我需要以编程方式将设备时间与服务器同步,这会在设备断电时造成困难

我猜问题可能是一些注册表设置没有被持久化,但我不确定这些设置是否存储了时间,我也没有找到一种方法来强制存储它们

谢谢你的建议


编辑:重新启动设备后,时钟没有完全重置,只是返回到错误的时间。重新启动后,设备的时间总是向前大约1小时。

如果设备在断电时失去了时间,那是因为它没有电池供电的时钟,或者时钟的电池没电了。没有任何电源,设备就无法维持时间,您也无法让设备节省时间,除非添加某种形式的备用电源(或更换电池,如果有)

编辑

如果时钟重置回系统默认值,但仅按小时更改,则强烈表明它正在丢失DST或时区设置。这两个都存储在注册表中,因此您的注册表设置可能不会持久化。这可能有两个原因:

  • 您已对注册表进行了更改,但未告诉操作系统保存更改。操作系统配置可以设置为定期保存更改,或者仅在明确告知时保存更改。在这里,您最好的选择是更改时钟(我假设您在调整时钟时正在更改时区和/或DST?),然后显式调用RegFlushKey API以强制进行注册表保存
  • 您的设备没有永久注册表。只有原始设备制造商才能解决这个问题。测试很简单,创建一个注册表项,调用RegFlushKey并重新启动以查看它是否仍然存在。如果不是这样,那么你的设备就不会保留注册表设置,你可能运气不好

  • 谢谢你的回复。我编辑了这个问题。问题是,该设备不会完全忘记时间,它仍然保持时间。但是,当我试图把它设置到正确的时间,只是我所做的改变被忘记了。