ठीक है तो शुरू करने के लिए इस Windows के लिए ही है और मैं उपयोग करने के लिए पसंद करते हैं सी ++ से अधिक नेट लेकिन मैं boost::filesystem
करने का विरोध नहीं कर रहा हूँ, हालांकि मुझे लगता है कि चाहते हैं तो यह सीधे Windows API के पक्ष में बचा जा सकता है।यह निर्धारित करने के लिए कि आगे की प्रक्रिया के लिए फाइलें कब की जाती हैं?
अब परिदृश्य एक और मशीन मैं नहीं बदल सकते पर एक आवेदन मशीन है कि मैं का बैकअप बनाने और कुछ अतिरिक्त संसाधन क्या करने की जरूरत पर एक विशेष निर्देशिका में फ़ाइलों को बनाने के लिए जा रहा है है। वर्तमान में मैंने एक छोटा सा एप्लीकेशन बनाया है जो FindFirstChangeNotification
और FindNextChangeNotification
विंडोज एपीआई का उपयोग कर लक्षित निर्देशिका में परिवर्तन अधिसूचनाओं के लिए बैठेगा और सुनेंगे।
समस्या यह है कि जब मैं जब नई फ़ाइलें निर्देशिका, संशोधित, आकार परिवर्तन में बनाए गए हैं सूचना मिल सकती है, आदि यह केवल एक बार सूचित करता है और विशेष रूप से मुझे जो फ़ाइलें नहीं बताता है। मैंने ReadDirectoryChangesW
पर भी देखा है, लेकिन यह वही कहानी है, सिवाय इसके कि मुझे थोड़ा और विशिष्ट जानकारी मिल सकती है।
अब मैं निर्देशिका स्कैन कर सकता हूं और फ़ाइलों को खोलने का प्रयास कर सकता हूं ताकि यह निर्धारित किया जा सके कि आखिरी अधिसूचना से क्या विशेष रूप से बदला गया है और क्या वे आगे के उपयोग के लिए उपलब्ध हैं, लेकिन बड़ी फाइल की प्रतिलिपि बनाने के मामले में मुझे यह पता चला है यह पर्याप्त नहीं है क्योंकि फ़ाइल छेड़छाड़ करने के लिए तैयार नहीं होगी और मुझे पहले के बाद कोई अन्य अधिसूचनाएं नहीं मिलेंगी, इसलिए यह कहने का कोई तरीका नहीं है कि जब वास्तव में पहली अधिसूचना के बाद मैं लगातार प्राप्त करने की कोशिश करता हूं ताले जब तक यह सफल नहीं होता है।
एकमात्र अन्य चीज जो मैं सोच सकता हूं उसके बारे में सोच सकता है कि कम हैकिश अंत टोकन फ़ाइल होगी लेकिन चूंकि मेरे पास पहले स्थान पर फ़ाइलों को बनाने के अनुप्रयोग पर नियंत्रण नहीं है, टी देखें कि मैं ऐसा करने के बारे में कैसे जाऊंगा और यह अभी भी आदर्श नहीं है।
कोई सुझाव?
बैकअप प्रोग्राम के बारे में क्या? –