2011-08-24 3 views
6

में मॉनिटर फ़ाइल/निर्देशिका एक्सेस की निगरानी मैं उस एप्लिकेशन को विकसित करना चाहता हूं जो मशीन पर एक्सेस की गई फ़ाइलों/निर्देशिकाओं को लॉग करता है।सी #

उदा। मैं डी: \ और फ़ोल्डर फ़ोल्डर में जाता हूं और एक शब्द फ़ाइल खोलता हूं।

  1. डी:: \ खोला
  2. डी: \ दस्तावेजों खोला
  3. डी: \ दस्तावेज \ secret.docx खोला

मैं मैं अपने आवेदन निम्न स्वरूप में एक लॉग बनाना चाहते हैं अन्य प्रकार की फाइल सिस्टम गतिविधि प्राप्त करने के लिए FileSystemWatcher का उपयोग किया है लेकिन इसे एक्सेस करने के लिए ईवेंट प्राप्त करने में असमर्थ है।

+0

कृपया अपना कोड पोस्ट करें। – tafoo85

+3

मुझे डर है कि आप कर्नेल में बहुत कम स्तर के WinAPI हुक के बिना ऐसा करने में सक्षम नहीं होंगे। –

उत्तर

1

सुनिश्चित नहीं है कि इस तरह की निगरानी फाइल सिस्टम सिस्टम के साथ हासिल की जा सकती है क्योंकि इसका उद्देश्य उन परिवर्तनों की निगरानी करना है जिसका मेरा मानना ​​है। आप फाइल सिस्टम ऑडिटिंग (उन्नत सुरक्षा सेटिंग्स में जाकर) का उपयोग कर सकते हैं जो इवेंट लॉग में ईवेंट लॉग करेगा और आप इसे वहां से खींच सकते हैं।

3

लगता है जैसे आप sys internals जैसे फ़ाइलमोन प्रोग्राम करना चाहते हैं। अपनी वेबसाइट मार्क में फ़ाइलमोन के तरीके के बारे में बताता है ताकि आप लेख पढ़कर कुछ प्रेरणा प्राप्त कर सकें।

भी यहाँ देखें: How do you monitor file access and changes on a file server by user name?

0

सबसे व्यवहार्य विकल्प फ़ाइल सिस्टम फिल्टर ड्राइवर का उपयोग है। ऐसा चालक आपको विशेष फाइल सिस्टम पर जाने वाले सभी अनुरोधों पर बढ़िया अनाज नियंत्रण देता है। इस दृष्टिकोण के साथ एकमात्र मुद्दा कर्नेल मोड में ऐसे ड्राइवर को विकसित करने की जटिलता है।