2017-04-27 75 views
0

我試圖創建一個過期日期的程序,但是如果計算機上的日期發生更改,則過期日期不再有效。如何解決它?
我用delphi製作了它更新日期時失效日期

+0

當應用程序啓動時,它可以檢查自上次運行應用程序以來是否已經轉回時鐘,如果是,則拒絕運行。該應用程序還可以處理['WM_TIMECHANGE'](https://msdn.microsoft.com/en-us/library/windows/desktop/ms725498.aspx)廣播消息,以檢測應用程序運行時是否更改了時鐘。無論哪種方式,如果時間變化很小,可以考慮不要禁用應用程序,如果PC連接到必須定期調整本地時鐘的時間同步服務器,可以很容易地解決這個問題。 –

回答

4

需要一些更多的信息來有效地回答這個問題,但是這聽起來像是問題發生,因爲系統使用設備的日期/時間/時鐘來確定日期的有效性。

解決此問題的唯一方法是掛入Web服務中,以獲取準確的日期值,然後通過更改系統時鐘難以處理。

還有一個計算器線程,解決使用互聯網的時間爲這些種類的目的:

Get internet time in delphi

我希望這有助於!

+1

如果你在沒有互聯網連接的PC上安裝應用程序,你基本上是SOL。另一種方法是限制應用程序可以運行的次數,限制每個單獨運行可以執行的時間,以防止用戶永遠離開應用程序。你不需要系統時鐘。 –