2008-11-11 16 views

उत्तर

7

आपको FileSystemWatcher से पुनः कनेक्ट करने की आवश्यकता है।

अपनी कक्षा के प्रकार को अपने सिस्टम में फ़ाइलसिस्टम वाटर ग्लोबल बनाएं, ईवेंट वॉचररर जोड़ें।

विधि के अंदर, जोड़ने के कुछ है कि जैसे:

private static void WatcherError(object source, ErrorEventArgs e) 
    { 
    watcher = new FileSystemWatcher();//You might want to do a method and to setup all config... 
    while (!watcher.EnableRaisingEvents) 
    { 
     try 
     { 
      watcher = new FileSystemWatcher();//You might want to do a method and to setup all config... 
     } 
     catch 
     { 
      System.Threading.Thread.Sleep(30000); //Wait for retry 30 sec. 
     } 
    } 
    } 

आप द्रष्टा उपयोग करने के लिए = नई ... आप पसंद करेंगे एक विधि है कि सभी घटना और सेटअप पथ जोड़ देगा नहीं करना चाहते हैं, लेकिन उपरोक्त कोड आपको एक अच्छा विचार देता है कि क्या करना है।

+0

यह कोड विश्वसनीय नहीं है क्योंकि FileSystemWatcher हमेशा त्रुटि नहीं होता है जब नेटवर्क फ़ोल्डर या ड्राइव की निगरानी की जाती है। – Tomas

+0

जब नेटवर्क डाउन हो, तो एक त्रुटि दिखाती है। स्थिति क्या है जहां यह विश्वसनीय नहीं है? –

+0

यदि FileSystemWatcher नेटवर्क फ़ोल्डर की निगरानी करने के लिए प्रयोग किया जाता है, तो FileSystemWatcher.Error को नेटवर्क से कुछ गलत होने पर हमेशा निकाल दिया नहीं जाता है। यह ज्ञात समस्या है और आपका कोड निष्पादित नहीं किया जाएगा। – Tomas

संबंधित मुद्दे