मैं किसी निर्देशिका की निगरानी करने के लिए Windows प्रपत्र अनुप्रयोग का उपयोग कर रहा हूं और फ़ाइलों को किसी अन्य निर्देशिका में छोड़ देता हूं।निर्देशिका की निगरानी करने के लिए FileSystemWatcher का उपयोग
फिलहाल यह फ़ाइल को दूसरी निर्देशिका में कॉपी करेगा, लेकिन जब कोई अन्य फ़ाइल जोड़ दी जाएगी तो यह केवल कोई त्रुटि संदेश समाप्त नहीं होगा। कभी-कभी यह तीसरे स्थान पर समाप्त होने से पहले दो फाइलों की प्रतिलिपि बनाता है।
ऐसा इसलिए है क्योंकि मैं एक कंसोल ऐप की बजाय विंडोज फॉर्म एप्लिकेशन का उपयोग कर रहा हूं? क्या कोई तरीका है कि मैं प्रोग्राम को समाप्त होने और निर्देशिका को देखने के लिए रोक सकता हूं?
private void watch()
{
FileSystemWatcher watcher = new FileSystemWatcher();
watcher.Path = path;
watcher.NotifyFilter = NotifyFilters.LastAccess | NotifyFilters.LastWrite
| NotifyFilters.FileName | NotifyFilters.DirectoryName;
watcher.Filter = "*.*";
watcher.Changed += new FileSystemEventHandler(OnChanged);
watcher.EnableRaisingEvents = true;
}
private void OnChanged(object source, FileSystemEventArgs e)
{
//Copies file to another directory.
}
'वॉचर 'चर को जीवित रखा जाता है (कचरा नहीं एकत्र किया जाता है) क्योंकि उसने बदली हुई घटना की सदस्यता ली है। – adospace