我創建了一個軟件,其中時間非常重要。因爲每次傳輸一些數據,我也會在win ce設備上設置時間。我轉移槽插座DateTime.Now.Ticks和設置時間與無法在Win CE設備上設置時間
[的DllImport( 「coredll.dll中」)]私有外部靜態UINT SetSystemTime(參照SYSTEMTIME lpSystemTime);
時區在PC上正確設置爲GMT + 1,其中服務器應用程序正在運行以及設備上。設備上的HomeDST爲0。
我的問題是,總有我的軟件在操作系統時間和時間之間有一個小時的時差。我檢索時間使用
[的DllImport( 「coredll.dll中」)]私有外部靜態無效 GetSystemTime(參照SYSTEMTIME lpSystemTime);
因此,例如在設備的右上角我看到9:12,比在應用程序8:12。
不要有任何人對此的解釋/解決方案?這將是非常有益的,因爲應用程序已可惜的活系統中使用,這一個使一個巨大的問題......
和GetSystemTime還檢索它作爲UTC,所以我有一個問題...所以我只是通過時區進行調整,這將是確定。謝謝! – HoGo 2013-03-13 16:06:36
對不起,我沒有答案,因爲問題仍然存在......甚至我使用UTC時間並設置它,而不是使用GetSystemTime取回,我少了一個小時。這兩個函數都應該與UTC時間一起工作,但是我從GetSystemTime獲得與SetSystem時間設置不同的時間。在第二次調用SetSystemTime時,它有時會再次正確。 – HoGo 2013-03-13 18:55:35
必須糾正一下。從我的觀點來看,這完全搞砸了。在完成SetSystemTime之後,我立即用GetSystemTime得到相同的UTC時間,但幾秒鐘後,GetSystemTime調用的結果發生了改變,並且它少了一個小時。 – HoGo 2013-03-13 19:06:19