के साथ कॉन्फ़िगरेशन फ़ाइलों को प्रबंधित करें मेरे पास कई फाइलों के साथ एक एप्लिकेशन है जिसमें कॉन्फ़िगरेशन पैरामीटर और अन्य डेटा शामिल हैं जो उपयोगकर्ता एप्लिकेशन का उपयोग करता है। ये फ़ाइलें मेरे सॉफ़्टवेयर के नए संस्करणों के साथ बदल सकती हैं, लेकिन उपयोगकर्ता उन्हें संशोधित भी कर सकता है (या वे एप्लिकेशन द्वारा ही बदला जा सकता है)। असल में, मैं उपयोगकर्ताओं को इन फ़ाइलों में ओवरराइट होने से रोकने के लिए एक समाधान की तलाश में हूं, लेकिन जब उपयोगकर्ता मेरे सॉफ़्टवेयर को अपग्रेड करता है तो संभावित रूप से अपडेट की गई फ़ाइलों को स्थापित करने का एक तरीका भी है।वाईएक्स
* एनआईक्स पर आरपीएम के साथ * आप एक विन्यास फाइल के रूप में फ़ाइल को परिभाषित करने के लिए% कॉन्फ़िगरेशन फ़ंक्शन का उपयोग कर सकते हैं और RPM तब मौजूदा फ़ाइल का नाम बदल देगा (यदि यह अस्तित्व में है) और अपग्रेड पर नया इंस्टॉल करें (शायद आदर्श नहीं है, लेकिन मैं वाईएक्स के लिए इस तरह कुछ के साथ रह सकता था)।
मैं अपनी कॉन्फ़िगरेशन फ़ाइलों को एक उपनिर्देशिका या यहां तक कि एक अलग नाम (उदा। डिफ़ॉल्ट.cfg) में स्थापित करना चाहता हूं और फिर फ़ाइलों को उनके सही स्थानों पर कॉपी करने के लिए वाईएक्स में <CopyFile>
तत्व का उपयोग करना चाहता हूं। इस तरह, डिफ़ॉल्ट फ़ाइलों को अपग्रेड पर इंस्टॉल और ओवरराइट करने पर हटा दिया जाएगा, लेकिन वास्तविक उपयोगकर्ता फाइलें वही रहेंगी। दुर्भाग्यवश <CopyFile>
के साथ, विंडोज इंस्टालर अभी भी गंतव्य फ़ाइल को प्रबंधित (और निकालना) चाहता है।
मैंने मूल रूप से "डिफ़ॉल्ट default.cfg reallocation.cfg कॉपी" करने के लिए WixUtilExtension में QtExec कार्रवाई का उपयोग करने पर भी विचार किया है, लेकिन यह काफी काम नहीं करेगा और यह एक हैक का थोड़ा सा है।
इसे संभालने का सही तरीका क्या है?