में मौजूद नहीं है तो कॉपी करें मेरे पास एक कॉन्फ़िगरेशन फ़ाइल, myapp.exe.config है, जिसे मैं केवल तब स्थापित करना चाहता हूं जब यह पहले से मौजूद न हो। यही है, मैं किसी मौजूदा कॉन्फ़िगरेशन फ़ाइल को ओवरराइट नहीं करना चाहता हूं। यह वाईएक्स में कैसे किया जा सकता है?वाईएक्स
वाईएक्स
उत्तर
क्या आप का वर्णन है (अंत में मैं सेटिंग्स, होने चूक और ओवरराइड और इतने पर के साथ और अधिक परिष्कृत कुछ करना होगा। लेकिन इस बीच में मैं सिर्फ एक अल्पकालिक ठीक रहा हूँ।) डिफ़ॉल्ट व्यवहार अगर फ़ाइल किसी घटक के keypath है। उदाहरण के लिए, निम्न घटक स्थापित नहीं किया जाएगा अगर foo.config
पहले से मौजूद है (या एक वर्सन फाइल के मामले में, अगर एक बराबर या उच्च संस्करण संख्या के साथ एक फ़ाइल पहले से मौजूद में):
<Component Id="foo.config">
<File Source="foo.config"/>
</Component>
नोट अगर आपके पास है कि आपके घटक में कई फाइलें, तो केवल कीपैथ हो सकती है। आप फ़ाइल के KeyPath
विशेषता को yes
पर सेट करके इसे नियंत्रित कर सकते हैं। लेकिन अनुशंसित रणनीति प्रति घटक केवल एक फ़ाइल है, जिसमें फ़ाइल स्वचालित रूप से घटक कीपैथ बन जाती है।
संपादित करें: ध्यान दें कि यह डिफ़ॉल्ट व्यवहार REINSTALLMODE property के साथ ओवरराइड किया जा सकता है। आप orca के साथ अपना एमएसआई खोलना चाहते हैं और देख सकते हैं कि यह संपत्ति संपत्ति तालिका में सेट की जा रही है या नहीं।
- 1. वाईएक्स
- 2. वाईएक्स
- 3. वाईएक्स
- 4. वाईएक्स
- 5. वाईएक्स
- 6. वाईएक्स
- 7. वाईएक्स
- 8. वाईएक्स
- 9. वाईएक्स
- 10. वाईएक्स
- 11. वाईएक्स
- 12. वाईएक्स
- 13. वाईएक्स
- 14. वाईएक्स
- 15. वाईएक्स
- 16. वाईएक्स
- 17. आप वाईएक्स
- 18. वाईएक्स 3.0
- 19. चुपचाप वाईएक्स
- 20. वाईएक्स 3.6
- 21. वाईएक्स बर्न
- 22. वाईएक्स इंस्टॉलर
- 23. वाईएक्स विकल्प?
- 24. इंस्टॉलशील्ड से वाईएक्स
- 25. वाईएक्स - हमेशा पिछले संस्करण
- 26. वाईएक्स कस्टमएक्शनडेटा कस्टमएक्शन
- 27. वाईएक्स प्रीप्रोसेसर $ var syntax
- 28. एक वाईएक्स इंस्टॉलर
- 29. वाईएक्स: 64-बिट विंडोज
- 30. वाईएक्स, विंडोज इंस्टालर सारांश?
धन्यवाद। यह पता चला है कि मैंने गलत सवाल पूछा है। नया इंस्टॉल करने से पहले मेरे इंस्टॉलर को अनइंस्टॉल करना होगा। (ट्यूटोरियल मुझे आश्वासन देता है कि यह मामूली अपग्रेड के लिए पूरी तरह से सामान्य है।) समस्या यह है कि कॉन्फ़िगरेशन फ़ाइल को हटाया जा रहा है भले ही इसे उपयोगकर्ता द्वारा संशोधित किया गया हो। मुझे इसकी जांच करनी होगी। –