windows इंस्टॉलर: WIX या Inno सेटअप?




installer inno-setup (4)

मैं इस धागे का जवाब देने में देर कर रहा हूं। मैंने वर्षों से अपनी कंपनी के उत्पाद के लिए इनो सेटअप का इस्तेमाल किया है। यह सबसे अधिक काम करता है बहुत अच्छी तरह से, लेकिन मेरे लिए सबसे बड़ी बाधा कस्टम क्रिया है इनो सेटअप में, पास्कल भाषा के एक संस्करण का उपयोग करना चाहिए। वाईएक्स टूलसेट के साथ, मैं अपने कस्टम कार्यों के लिए सी # का उपयोग कर सकता हूं जो मेरे लिए ज्यादा सहज है बेशक, यह एक निजी प्राथमिकता है लेकिन यह प्राथमिक कारण है कि मैं एक उत्कृष्ट उत्कृष्ट प्रदर्शन प्लेटफॉर्म से भी एक उत्कृष्ट वाईएक्स प्लेटफॉर्म पर स्विच कर रहा हूं। यही, और तथ्य यह है कि एमएसआई का उपयोग करने से इतने सारे लाभ थे जो पहले से ही एक और प्रतिक्रिया में उल्लिखित हैं।

सच कहूँ तो, मेरे लिए, पास्कल की सीखने की अवस्था पुस्तक का उपयोग करते हुए वाईएक्स की तुलना में अधिक थी, वाईएक्स 3.6: विंडोज डेवलपर एक्सएमएल के लिए डेवलपर की गाइड

मैं इन दो उपकरणों की तुलना कर रहा हूँ मेरे पास इस धारणा है:

  • Inno सेटअप एक MSI का उत्पादन नहीं करता है, लेकिन WIX कर सकता है जो कुछ भी कर सकता है
  • WIX एक एमएसआई का उत्पादन करता है, लेकिन एक व्यापक सीखने की अवस्था है

क्या आप इस विशेषता के साथ सहमत हैं? क्या अन्य मतभेद हैं? कैसे WIX # शेक अप इस कहानी है? चूंकि Inno सेटअप विंडो इंस्टालर का उपयोग नहीं करता है, क्या उसे अनइंस्टॉल करने में कठिनाई होती है? Inno सेटअप, कमांड पर, किसी पुराने संस्करण को अधिष्ठापन डाउनग्रेड कर सकता है - या यह केवल अनुप्रयोगों को स्थापित / अपग्रेड कर सकता है?


जब से मैंने एमएसआई के साथ काम किया, तब से मैं लंबे समय से रहा हूं जब मैंने इनोसेटअप पर स्विच किया, मैंने कभी वापस नहीं देखा।

मैं नहीं चाहता था कि मेरी स्थापना सिरदर्द हो। मुझे कुछ जरूरत थी जहां मैं "इसे सेट कर सकता था और इसे भूल सकता था"

डिफ़ॉल्ट रूप से InnoSetup एक स्थापना रद्द पैदा करता है। यह सरल या जटिल स्थापित कर सकता है और स्थापनाओं को अनइंस्टॉल कर सकता है।

InnoSetup के साथ आप अनुप्रयोगों को अपग्रेड कर सकते हैं कुछ अलग तरीके हैं

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

InnoSetup डाउनग्रेड के साथ आमतौर पर पुराने संस्करण को अनइंस्टॉल और पुनर्स्थापित कर दिया जाता है।


हम दोनों अपने निर्माण प्रणाली में एकीकृत

लेकिन हमने गैर व्यापारिक ग्राहकों और एमएसआई के लिए केवल एक सरल कारण की मांग पर innosetup exe फ़ाइलों को बढ़ावा देने का निर्णय लिया है

आप MSI के साथ सेटअप प्रोग्राम के बहु-स्थानीयकृत संस्करण को जहाज नहीं कर सकते आपको हर भाषा के लिए एक इंस्टॉलर की ज़रूरत होगी और यह बहुत बड़ा बेकार है कुछ भारी हैकिंग हो सकता है जिससे आप पूरे जीयूआई को फिर से लिख सकें लेकिन यह अच्छी तरह से प्रलेखित नहीं है और चोरी करने के लिए कोई भी खुला स्रोत नहीं है और बहुत काम है

जीयूआई वास्तव में वाईएक्स पर सबसे खराब हिस्सा है जो अन्यथा तकनीकी तौर पर इनोसेटअप से बेहतर है।

Innosetup के साथ 5 भाषाओं में एक exe जहाज आसान है हमारे पास पहले से ही 6 बायनेरिज़ [फ्री, होम, प्रो - प्रत्येक 32/64 बिट] हैं, इसलिए विस्फोट विस्फोट बहुत बड़ा होगा और यदि आप एक जापानी संस्करण को जापानी वेबपेज के साथ बाजार में डालते हैं और पहली बात यह है कि अंग्रेजी केवल स्थापना है एक बुरा प्रभाव

व्यापार उपयोगकर्ताओं के लिए एमएसआई समूह नीतियों आदि की आवश्यकता है। केवल अंग्रेजी है और व्यापार उपयोगकर्ताओं के लिए ठीक है।


आप MSI के बारे में सही नहीं हैं एमएसआई का हिस्सा है और आप सही हैं कि एमएसआई की सीखने की अवस्था तेज है लेकिन दोनों में सुविधाओं के अन्य नहीं है। मुझे एमएसआई के फायदे पर ग्लाट्ज़कॉफ का उद्धरण दें

Glytzhkof हाय ;-) कहते हैं कृपया MSF के साथ सामान्य समस्याओं के सारांश के लिए serverfault.com पर अपने मूल उत्तर दोनों पढ़ा है जिसके परिणामस्वरूप इसकी तेजी से सीखने की अवस्था हो सकती है। यह जवाब यहां सैद्धांतिक लाभों पर केंद्रित है, दूसरे जवाब (एक ही धागे में) मेरे सिर के ऊपर की ओर से आम एमएसआई समस्याओं का सारांश देता है इसके अतिरिक्त अधिकतर स्वागत है - मैंने अभी तक सबसे आम समस्याएं जोड़ दी हैं।

  • पारदर्शिता (ओपन इंस्टॉलर प्रारूप) - एक एमएसआई की समीक्षा और निरीक्षण किया जा सकता है। बड़े निगमों के लिए यह एक बड़ा मुद्दा है संकलित कस्टम क्रियाओं के अपवाद के साथ एक MSI फ़ाइल "सफेद बॉक्स" है अगर सेटअप सिस्टम-वाइड नेटवर्क सेटिंग्स जैसे कुछ पागल को बदलता है, तो आप वास्तव में इसे देख सकते हैं
  • अनुकूलन - एक संगठन की जरूरतों और मानकों को फिट करने के लिए रूपांतरण के माध्यम से एक एमएसआई को अनुकूलित किया जा सकता है, जबकि अभी भी विक्रेता के इंस्टॉलर अद्यतनों के साथ अंतर क्षमता प्रदान करते हैं। आप खुद को इंस्टॉलर नहीं बदलते हैं, तो आप अपने अनुकूलन को एक अलग, संगठन-विशिष्ट फाइल में बनाते हैं जिसे ट्रांस्फ़ॉर्म कहा जाता है। आप कस्टम क्रियाओं को निष्क्रिय करने के लिए स्वतंत्र हैं और इंस्टॉलर में सामान्य कुछ भी, और स्पष्टीकरण के लिए विक्रेता से संपर्क करके कस्टम क्रियाओं को "ब्लैक बॉक्स" से मंजूरी दे दी जा सकती है ये ट्रांसफ़ॉर्म फाइलें कभी-कभी एक एमएसआई फ़ाइल को विभिन्न भाषाओं में स्थानांतरित करने के लिए भी उपयोग की जाती हैं। कई रूपांतरण एक एकल एमएसआई में लागू किए जा सकते हैं
  • मानकीकरण - एमएसआई अपने आप को "कुछ भी अनुमति दे" करने के लिए उधार नहीं देता है यह इंस्टॉलर के लिए एक व्यापक रूपरेखा प्रदान करता है, जो कि महत्वपूर्ण रूप से भी अनइंस्टॉल भी शामिल है - सभी मानक प्रारूप में। इंस्टॉलर जीयूआई को मूक स्थापना और स्थापना रद्द करने के लिए अंतर्निहित सुविधाओं के साथ भी मानकीकृत किया जाता है जो दूर से ट्रिगर किया जा सकता है
  • प्रबंधन और रिपोर्टिंग - विंडोज इंस्टालर एक उत्पाद के स्थापित होने वाली सभी वस्तुओं का एक विस्तृत डाटाबेस बनाए रखता है। आप मज़बूती से निर्धारित कर सकते हैं कि कोई उत्पाद स्थापित है या नहीं, कौन से विशेषताएं स्थापित की गई थीं, और कौन से फ़ाइल संस्करण स्थापित किए गए थे। इसके अलावा आप किसी भी पैच की सूची प्राप्त कर सकते हैं जो आधार उत्पाद पर लागू किए गए हैं, यदि कोई हो
  • सुरक्षा - व्यापक स्थापना डेटाबेस से निम्नलिखित स्थापित उत्पादों में सुरक्षा कमजोरियों का पता लगाना संभव है। एमएसआई में "उन्नत अधिकार" सिद्धांत शामिल हैं जो एक सीमित उपयोगकर्ता को किसी ऐसे उत्पाद को स्थापित करने के लिए प्रेरित कर सकते हैं, जिसे स्थापित करने के लिए व्यवस्थापक विशेषाधिकारों की आवश्यकता होती है। यह "विज्ञापन सुविधा" का हिस्सा है जो किसी व्यवस्थापक को उपयोगकर्ताओं को सभी वर्कस्टेशंस पर वास्तव में स्थापित किए बिना इंस्टॉलरों को उपलब्ध कराने की अनुमति देता है। काम करने के लिए अस्थायी अधिकारों के साथ गड़बड़ करने की कोई आवश्यकता नहीं है
  • सत्यापन - एमएसआई फाइलों को सत्यापन नियमों के साथ जांच की जा सकती है ताकि यह सुनिश्चित हो सके कि यह कई आंतरिक स्थिरता नियमों (आईसीई के रूप में संदर्भित) के अनुपालन में है। निगम विशेष कॉर्पोरेट नियमों और आवश्यकताओं को लागू करने के लिए स्वयं के आईसीई चेक बना सकते हैं। यह QA के साथ बहुत मदद करता है
  • लचीलापन - विंडोज इंस्टालर के व्यवस्थापक इंस्टॉल सुविधा एक MSI से स्रोत फ़ाइलों को निकालने का एक मानक तरीका प्रदान करता है। इन स्रोत फ़ाइलों को एक शेयर पर रखा जा सकता है और स्थापना के लिए सभी वर्कस्टेशनों के लिए उपलब्ध हो सकता है। यह सीडी या समान पर इंस्टॉलेशन मीडिया का अनुरोध किए बिना मरम्मत, स्थापना रद्द और पूर्ण संचालन को सुनिश्चित करता है। विशेष रूप से पैचिंग और अपडेट ऑपरेशंस के लिए यह विशेष रूप से महत्वपूर्ण है, जिनके लिए विशेष परिस्थितियों में पुराने संस्करण स्रोत फ़ाइलों तक पहुंच की आवश्यकता हो सकती है।
  • रोलबैक - एक एमएसआई फ़ाइल की स्थापना आम तौर पर एक पुनर्स्थापना बिंदु के निर्माण को गति देगा। इसके अलावा अधिष्ठापन के दौरान प्रतिस्थापित या ओवरराइट की सभी फाइलें और रजिस्ट्री आइटम को सहेज लिया जाएगा और अगर संस्थापन पूर्ण होने में विफल रहता है तो उसे बहाल किया जाएगा। यह सुनिश्चित करता है कि वर्कस्टेशन को स्थिर स्थिति में छोड़ दिया जाता है भले ही स्थापना विफल हो। जैसा कि आप अपेक्षाकृत खराब MSI फ़ाइलें Windows की अंतर्निहित सुविधाओं का उल्लंघन कर सकते हैं, यह अधिक जानकारी के लिए इस थ्रेड में मेरी दूसरी पोस्ट देखें।
  • पचिंग और अपडेट - हालांकि विंडोज इंस्टालर में बेहद जटिल पैचिंग सिस्टम पर पूरी तरह से प्रबंधित और पंजीकृत है, ताकि सिस्टम सुरक्षा स्थिति को निर्धारित किया जा सके कि क्या स्थापित किया गया है। अपडेट को कुछ मूलभूत रूपों के लिए मानकीकृत किया जाता है, और यह अपडेट को उच्च स्तर के निश्चितता के साथ करने की अनुमति देता है परिनियोजन सिस्टम रिपोर्ट करने में सक्षम होंगे कि कौन-से अद्यतन विफल रहे और क्यों
  • लॉगिंग - विंडोज इंस्टालर एक मानकीकृत लॉगिंग सुविधा प्रदान करता है जो कि पिछले अवतारों से काफी बेहतर है, यद्यपि लगभग अत्यधिक शब्दशः लॉग फाइलों को लॉग विश्लेषक के जरिए गूढ़ किया जा सकता है, और अनावश्यक जानकारी के साथ बहुत बड़ी लॉग फाइलों को उत्पन्न करने के लिए कस्टम लॉग स्तर का उपयोग किया जा सकता है। डीबगिंग प्रयोजनों के लिए वर्बोज़ लॉगिंग बेहद उपयोगी है। एक MSI लॉग फ़ाइल को पढ़ने के लिए एक अच्छा मैनुअल तरीके के लिए रोब मेनन्चिंग के ब्लॉग को देखें






inno-setup