मैं एक WPF/C# ऐप के साथ काम कर रहा हूं जहां मुझे उपयोगकर्ताओं को किसी विशेष सुविधा तक पहुंचने से लॉक करने की आवश्यकता है। असल में, उस समय से एक निश्चित घटना होती है, मैं अगले 24 घंटों तक कुछ पहुंच को रोकना चाहता हूं।क्या टाइमस्टैम्प के लिए कोई विंडोज पूर्ण समय है? (.NET)
सरल मामला:
- घटना, होता टाइमस्टैम्प (DATETIME का उपयोग कर या समान)
- उपयोगकर्ता 15 घंटे बाद क्षेत्र का उपयोग करने की कोशिश करता है, की तुलना अब टाइमस्टैम्प के ... ब्लॉक
- उपयोगकर्ता की कोशिश करता बचाने 25 घंटे बाद क्षेत्र तक पहुंचने के लिए, अब टाइमस्टैम्प की तुलना करें ...
सभी अच्छे। हालांकि, उपयोगकर्ता के पास सिस्टम समय बदलने की क्षमता है, जो मुझे रॉयली से खराब करता है। वे बस 24 घंटे आगे सिस्टम समय निर्धारित कर सकते हैं और मेरा ऐप कोई भी बुद्धिमान नहीं होगा।
मुझे लगता है कि विंडोज़ में समय बदलना सिस्टम की वास्तविक समय घड़ी के लिए अपना रास्ता बनाता है ... तो क्या कोई मुफ्त चलने वाला टाइमर है जो सिस्टम घड़ी से स्वतंत्र है? एक ऐसा उपयोगकर्ता जिसके साथ गड़बड़ नहीं हो सकती है?
किसी भी अंतर्दृष्टि की सराहना की जाती है।
लेकिन उन दोनों को उपयोगकर्ता के वातावरण पर निर्भर हैं:
यहाँ एक नेट सेवा में WM_TIMECHANGE संदेश फँसाने पर कुछ जानकारी है। रीबूट (पर्यावरण। टिककाउंट के लिए) या इंटरनेट अनप्लग (वेब सेवा) पर क्या होता है? –
@ स्टीफन, मैंने विशेष रूप से ध्यान दिया कि पर्यावरण। टिककंट रीबूट पर रीसेट करता है। यदि सेवा अनुपलब्ध है - यदि ऐप को उस अखंडता के स्तर की आवश्यकता है तो इसे ऑफ़लाइन कार्य करने की अनुमति नहीं दी जानी चाहिए। – Josh
+1 इस उत्तर का महत्वपूर्ण हिस्सा यह है कि न केवल बाहरी समय स्रोत ही एकमात्र वास्तविक विकल्प है, लेकिन यदि आप वास्तव में सुनिश्चित करना चाहते हैं, तो आपको समय सेवा को खराब करने वाले दुर्भावनापूर्ण उपयोगकर्ताओं के खिलाफ स्वयं की रक्षा करने की आवश्यकता है - इसलिए SSL की आवश्यकता । –