2009-11-24 16 views
126

मैंने बहुत कुछ खोजा, लेकिन सभी अनुमानित उत्तर हैं। सही जवाब खोजने में मेरी मदद करें।.msi और setup.exe फ़ाइल के बीच विशिष्ट अंतर क्या हैं?

+5

देखें http://stackoverflow.com/questions/902841/why-do-so-many-programs-have-both-a-setup-exe-and-a-setup-msi – rds

+2

यहां एक ** है [ अधिक हालिया उत्तर] (http://www.stackoverflow.com/a/23815524/129130) ** –

उत्तर

9

.msi फ़ाइलें विंडोज़ Windows इंस्टालर क्रम बिना संस्थापक फ़ाइलें, setup.exe किसी भी निष्पादन योग्य programm हो सकता है (शायद एक है कि आपके कंप्यूटर पर सामान को स्थापित करता है)

-2

एमएसआई मूल रूप से Microsoft से एक इंस्टॉलर है कि में बनाया गया है है विंडोज। यह घटकों के साथ घटकों को जोड़ता है और स्थापना नियंत्रण जानकारी शामिल है। यह आवश्यक नहीं है कि इस फ़ाइल में वास्तविक उपयोगकर्ता आवश्यक फाइलें हों, यानी एप्लिकेशन प्रोग्राम जो उपयोगकर्ता अपेक्षा करते हैं। एमएसआई में इसके अंदर एक और setup.exe हो सकता है जो एमएसआई लपेटता है, जिसमें वास्तव में उपयोगकर्ता आवश्यक फाइलें होती हैं।

आशा है कि इससे आपको संदेह हो जाएगा।

+12

यह भ्रमित और आम तौर पर गलत है - उस 'एमएसआई' फाइलों में आमतौर पर ** ** setup.exe' लपेटें नहीं फाइलें, बल्कि इसके विपरीत। –

153

एक एमएसआई एक विंडोज इंस्टालर डेटाबेस है। विंडोज इंस्टालर (विंडोज़ के साथ स्थापित एक सेवा) आपके सिस्टम पर सॉफ़्टवेयर इंस्टॉल करने के लिए इसका उपयोग करता है (यानी फाइल कॉपी करें, रजिस्ट्री मान सेट करें, इत्यादि ...)।

एक setup.exe या तो बूटस्ट्रैपर या गैर-एमएसआई इंस्टॉलर हो सकता है। एक गैर-एमएसआई इंस्टॉलर इंस्टॉलेशन संसाधनों को स्वयं से निकाल देगा और सीधे उनकी स्थापना का प्रबंधन करेगा। बूटस्ट्रैपर में व्यक्तिगत फ़ाइलों के बजाय एक एमएसआई होगा। इस मामले में, setup.exe MSI को स्थापित करने के लिए Windows इंस्टालर को कॉल करेगा।

कुछ कारणों से आप एक setup.exe उपयोग करने के लिए चाहते हो सकता है:

  • Windows इंस्टालर केवल एक एमएसआई एक समय में स्थापित करने की अनुमति देता है। इसका मतलब है कि एमएसआई अन्य एमएसआई स्थापित करना मुश्किल है (उदाहरण के लिए .NET फ्रेमवर्क या सी ++ रनटाइम जैसी निर्भरता)। चूंकि setup.exe एक एमएसआई नहीं है, इसलिए इसका उपयोग अनुक्रम में कई एमएसआई स्थापित करने के लिए किया जा सकता है।
  • आप स्थापना को प्रबंधित करने के तरीके पर अधिक सटीक नियंत्रण चाहते हैं। एक एमएसआई के पास बहुत विशिष्ट नियम हैं कि यह इंस्टॉल, अपग्रेडिंग और अनइंस्टॉल करने सहित इंस्टॉलेशन का प्रबंधन कैसे करता है। एक setup.exe सॉफ़्टवेयर कॉन्फ़िगरेशन प्रक्रिया पर पूर्ण नियंत्रण देता है। यह केवल तभी किया जाना चाहिए यदि आप वास्तव में अतिरिक्त नियंत्रण की आवश्यकता है क्योंकि यह बहुत काम है, और यह सही होने के लिए मुश्किल हो सकता है।
+5

मैं इसे टाइप करने जा रहा था - शायद यह वह है जो वह – Mongoose

+0

के लिए देख रहा है मेरे अनुभव में एक एमएसआई इंस्टॉलर * एक एक्सई आधारित इंस्टॉलर के निर्माण की तुलना में * बहुत काम * है। यह आपके द्वारा इंस्टॉलर को पहले स्थान पर बनाने के लिए उपयोग किए जाने वाले टूल पर निर्भर करता है। दुर्भाग्य से मैंने देखा है कि सभी एमएसआई आधारित इंस्टॉलर उपकरण या तो वाणिज्यिक जीयूआई उपकरण या जटिल वाईएक्स आधारित उपकरण रहे हैं। इनमें से कोई भी मेरी आवश्यकताओं को विशेष रूप से अच्छी तरह से उपयुक्त नहीं करता है (यानी स्वचालित रूप से एक स्क्रिप्ट के साथ इंस्टॉलर बनाना)। – craftworkgames

3

एमएसआई एक इंस्टॉलर फ़ाइल है जो आपके प्रोग्राम को निष्पादन प्रणाली पर स्थापित करती है।

Setup.exe एक एप्लिकेशन (निष्पादन योग्य फ़ाइल) है जिसमें एमएसआई फ़ाइल संसाधनों में से एक है। Setup.exe निष्पादित करने में बदले में एमएसआई (इंस्टॉलर) निष्पादित होगा जो आपके एप्लिकेशन को सिस्टम में लिखता है।

संबंधित मुद्दे