2017-04-27 5 views
0

만료 날짜가있는 프로그램을 만들려고했으나 컴퓨터 날짜가 변경되면 만료 날짜가 더 이상 작동하지 않습니다. 그것을 해결하는 방법?
델파이를 사용하여 만들었습니다날짜가 변경되면 만료 날짜가 작동하지 않습니다.

+0

앱이 시작되면 앱이 마지막으로 실행 된 이후 시계가 되돌아 갔는지 여부를 확인할 수 있습니다. 그렇다면 실행을 거부합니다. 앱이 실행되는 동안 시계가 변경되었는지 감지하려면 [WM_TIMECHANGE'] (https://msdn.microsoft.com/en-us/library/windows/desktop/ms725498.aspx) 브로드 캐스트 메시지도 처리 할 수 ​​있습니다 . PC가 로컬 시계를 주기적으로 조정해야하는 시간 동기화 서버에 연결되어있는 경우 쉽게 변경 될 수있는 시간 변경이 적은 경우 앱을 사용 중지하지 않는 것이 좋습니다. –

답변

4

이 정보에 대한보다 자세한 정보가 필요하지만 시스템에서 장치의 날짜/시간/시계를 사용하여 날짜의 유효성을 확인하기 때문에 문제가 발생하는 것처럼 들립니다.

이 문제를 해결하는 유일한 방법은 정확한 날짜 값을 위해 웹 서비스에 연결하는 것입니다.이 값은 시스템 시계를 변경하여 조작하기가 어렵습니다. Get internet time in delphi

나는이 도움이 되었으면 좋겠 :

는 목적으로 이러한 종류의 인터넷 시간을 사용하여 주소를 다른 유래 스레드가 있습니다!

+1

그리고 인터넷에 연결하지 않고 PC에 앱을 설치하면 기본적으로 SOL입니다. 대안은 앱 실행 횟수를 제한하여 사용자가 앱을 영원히 돌리는 것을 방지하기 위해 각 개별 실행을 실행할 수있는 시간을 제한하는 것입니다. 이를 위해서는 시스템 시계가 필요하지 않습니다. –