2010-03-11 2 views
5

मैं एक आवेदन के लिए एक सरल अद्यतन तंत्र को कार्यान्वित कर रहा हूं जिसे मैं अद्यतन प्रक्रिया का अंतिम भाग लिख रहा हूं जिसमें वर्तमान अनुप्रयोग निष्पादन योग्य फ़ाइल को myApp.exe जैसे myApp.old.exe से नामित करने और फिर ताज़ा डाउनलोड करने का नाम बदलना शामिल है और myApp.new.exe से myApp.exe पर अद्यतन फ़ाइल।क्या .NET अनुप्रयोग के लिए फ़ाइल सिस्टम लेनदेन तंत्र उपलब्ध है?

मैं दो ऑपरेशन परमाणु होने के लिए एक रास्ता खोजना चाहता हूं, क्योंकि यदि मेरा एप्लिकेशन क्रैश (किसी भी कारण से, एक पावर लाइन पर गिरने वाले क्षुद्रग्रहों की तरह) अपने नाम के बाद और इसे नए संस्करण का नाम देने से पहले , यह एक ऐसे राज्य में फंस जाएगा जहां इसे सामान्य शॉर्टकट का उपयोग करके पुनरारंभ नहीं किया जा सकता है, इसलिए यह इसके अपडेट को पूरा करने में सक्षम नहीं होगा।

तो क्या अपडेट विफल होने के लिए वैसे भी है?

उत्तर

2

2008/Vista ऊपर की ओर हाँ, हालांकि यह खुलासा नहीं हुआ है। उस बिंदु पर, एनटीएफएस को फाइल सिस्टम/कर्नेल स्तर पर फाइल सिस्टम लेनदेन मिला।

की जांच करें:

http://www.michaelckennedy.net/blog/2007/12/07/SystemTransactionsAndWindowsVistaNTFSUpdated.aspx

http://www.codeguru.com/cpp/misc/misc/fileio/article.php/c9987

http://xavierdecoster.wordpress.com/2009/10/18/transactional-ntfs-txf/

वे कोड नमूने की है।