我创建了一个软件,其中时间非常重要。因此,每次传输一些数据时,我都会在 win ce 设备上设置时间。我通过套接字 DateTime.Now.Ticks 传输并设置时间
[DllImport("coredll.dll")] private extern static uint SetSystemTime(ref SYSTEMTIME lpSystemTime);
时区在 PC 上正确设置为 GMT+1,其中服务器应用程序正在运行,并且也在设备上。设备上的 HomeDST 为 0。
我的问题是,操作系统中的时间和我的软件中的时间总是有一个小时的差异。我检索时间使用
[DllImport("coredll.dll")] private extern static void GetSystemTime(ref SYSTEMTIME lpSystemTime);
因此,例如在设备的右上角,我看到 9:12,而不是应用程序中的 8:12。
有人对此有解释/解决方案吗?这将非常有帮助,因为不幸的是,应用程序已经在实时系统中使用了,而这会带来很大的问题......