2009-06-27 14 views
5

मेरी कंपनी एक ऐसे एप्लिकेशन को विकसित कर रही है जिस पर हमारे किसी अन्य एप्लिकेशन पर निर्भरता है। उस दूसरे एप्लिकेशन में पहले से ही एक इनो सेटअप इंस्टॉलर है।एक इनो सेटअप स्थापना में एक और इंस्टॉलर चलाएं

तो मुझे लगता है कि मैं पहले एप्लिकेशन के लिए इनो सेटअप इंस्टॉलर के भीतर दूसरे एप्लिकेशन के इंस्टॉलर को बंडल करना चाहता हूं। लेकिन मुझे यकीन नहीं है कि इस बारे में कैसे ठीक से जाना है। क्या कोई इसे करने के लिए "सही तरीका" जानता है?

मुझे यह मिला: Inno Setup Knowledge Base—HOWTO: Install .MSI files। मुझे लगता है कि तकनीक को नेस्टेड इनो सेटअप इंस्टॉलर के लिए इस्तेमाल किया जा सकता है। लेकिन मेरे पास ठीक विवरण के बारे में कुछ प्रश्न हैं:

  1. यदि मैं पहला एप्लिकेशन अनइंस्टॉल किया गया तो मैं इसे कैसे बना सकता हूं, दूसरा भी अनइंस्टॉल किया गया है?
  2. क्या यह एक समझदार चीज है (स्वचालित रूप से दूसरे एप्लिकेशन को अनइंस्टॉल करें), या क्या इसे मैन्युअल रूप से करने के लिए उपयोगकर्ता को छोड़ देना चाहिए?
  3. यदि उपयोगकर्ता पहले एप्लिकेशन को अनइंस्टॉल करते समय दूसरे एप्लिकेशन को अनइंस्टॉल करने का प्रयास करता है, तो क्या मुझे किसी भी तरह इसका पता लगाना चाहिए और चेतावनी देना चाहिए? ऐसा कैसे किया जा सकता था?

उत्तर

2

अनइंस्टॉलर कार्यक्षमता के स्तर के लिए आप बात कर रहे हैं, मेरा सुझाव है कि आप इनो सेटअप में पास्कल स्क्रिप्टिंग से परिचित हो जाएं (यदि आप पहले से नहीं हैं)। यह अविश्वसनीय अनुकूलन प्रदान करता है, लेकिन आपकी परियोजनाओं को और अधिक जटिल बनाने की चेतावनी है।

पहले अपने तीसरे सवाल का जवाब करने के लिए:

हाँ, तो आप इस करना चाहिए। इसे सही तरीके से करने के लिए, आपको इस कार्यक्षमता को दूसरे एप्लिकेशन के अनइंस्टॉलर में जोड़ना होगा (यानी आपका ऐप निर्भर है)। इनो सेटअप सहायता में Uninstall event functions देखें। यदि आपका ऐप इंस्टॉल है तो आपको उस अनइंस्टॉलर में जांचना होगा (उदाहरण के लिए HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\SecondAppName मौजूद है या नहीं, और उस मामले में एक अतिरिक्त चेतावनी दिखाएं।

अपने दूसरे प्रश्न का सवाल है:

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

और अंत में, अपने पहले प्रश्न:

आप अन्य एप्लिकेशन की अनइंस्टॉलर exe का नाम (पूरा पथ) निर्धारित करने के लिए की जरूरत है। आप इसे रजिस्ट्री कुंजी HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\SecondAppName\UninstallString से पुनर्प्राप्त कर सकते हैं। [CODE] अनुभाग में किसी स्क्रिप्ट से इसे निष्पादित करने के लिए, इनो सेटअप सहायता में Exec देखें।

+1

कुछ कोड साझा करें! – tmighty

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