2008-08-23 9 views
8

सरल पर भारी जोर। मैंने कभी इंस्टॉलर नहीं बनाया है और मुझे ज्यादा सीखना नहीं है। एक प्रणाली जिसे मैं फाइलों का ढेर सौंप सकता हूं और यह कुछ स्मार्ट अनुमान लगाएगा कि उन्हें कहां रखा जाए आदर्श होगा।XP/Vista और नए पर VB6 के लिए एक सरल इंस्टॉल सिस्टम कैसे बनाएं?

आगे बढ़ें और सामान्य प्रश्न का उत्तर दें।

हालांकि मेरे मामलों में मैं कुछ अतिरिक्त बाधाओं से फंस गया हूं। स्थापित करने के लिए प्रोग्राम VB6 (या यह 5 है?) और वीबी के कुछ पिछले संस्करणों में लिखा गया है, इसलिए यह जल्द ही अपडेट होने जा रहा है। मेरे पास एक चल रहा है और इसके साथ खेलने के लिए एक क्लीन वीएम होगा इसलिए मैं एक लूप कर रहा हूं: इंस्टॉल चलाएं, यह कहां टूटा हुआ है, इसे ठीक करें, इंस्टॉलर को जोड़ें, वीएम को वापस लाएं, पुनः प्रयास करें। अगर किसी के पास बेहतर दृष्टिकोण है तो मैं सुझावों के लिए खुला हूं।

I आवश्यक इसे XP पर काम कर रहा है और मुझे वास्तव में ऐसा कुछ भी पसंद है जो विंडोज के नए संस्करणों पर भी काम करेगा।

+0

संभावित डुप्लिकेट [विंडोज इंस्टालर बनाने के लिए सबसे अच्छा विकल्प क्या है?] (Http://stackoverflow.com/questions/3767/what-is-the-best-choice-for-building-windows-installers) – saschabeaumont

+0

@sascha डुप्लिकेट नहीं है, क्योंकि वीबी 6 प्रोग्राम स्थापित करना थोड़ा अलग है।नेट प्रोग्राम – MarkJ

उत्तर

11

InnoSetup या NSIS, जो भी आपको आसान लगता है। ISTool इनोसेटअप के लिए एक अच्छा जीयूआई उपकरण है जो सेटअप स्क्रिप्ट को और भी आसान बनाता है।

+0

मैं इनो का उपयोग कर रहा हूं (मैंने दूसरे की कोशिश नहीं की) और इसका उपयोग करना आसान लगता है। हालांकि दस्तावेज़ों पर थोड़ा सा प्रकाश। – BCS

+0

एनएसआईएस उत्कृष्ट है! वर्षों से इसका इस्तेमाल कर रहा है। आप एक बेहद सरल इंस्टॉलर बना सकते हैं लेकिन आप जितना चाहें उतना शामिल हो सकते हैं। – Nerdtron

4

Dependency Walker यह पता लगाने के लिए बहुत उपयोगी है कि इंस्टॉलर से कौन सा डीएल गुम है। एक बार जब आप डीएलएल को जानते हैं, तो आप Merge Module Finder का उपयोग कर यह विलय मॉड्यूल पा सकते हैं।

+0

निर्भरता वॉकर/वास्तव में/आसान – BCS

1

मैंने एनएसआईएस के साथ काम किया है और इसकी कुछ छोटी जटिलताओं को अपने शानदार सिस्टम से पहले प्राप्त कर लिया है। यह मुफ़्त है, प्लगइन क्षमता की बहुत सारी पेशकश करता है और मुझे जो कुछ करने की ज़रूरत है वह करने में कामयाब रहा।

5

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

0

मेरी सलाह यह है। जितना संभव हो सके इंस्टॉलर को सरल रखने की कोशिश करें। विंडोज इंस्टालर सॉफ़्टवेयर का एक बहुत ही जटिल टुकड़ा है और जब चीजें सही काम नहीं करती हैं तो यह पता लगाना मुश्किल हो सकता है कि क्या हो रहा है। मुझे यकीन है कि हमने सभी को Windows इंस्टालर के अंतहीन पाश का अनुभव किया है जो उस फ़ाइल की मरम्मत करने का प्रयास कर रहा है जिसमें आपके पास अब स्रोत .msi फ़ाइल नहीं है।

विंडोज इंस्टालर का उपयोग करने में अधिकांश समय एक अखरोट को तोड़ने के लिए एक स्लेज हथौड़ा का उपयोग करना है।

मैं अपने स्वयं के सामान और इंस्टॉलशील्ड के लिए इनोसेटअप का उपयोग करता हूं (मेरी इच्छा के विरुद्ध)। एक साधारण स्क्रिप्ट आधारित इंस्टॉलर से शुरू करें और यदि आपके पास कोई अच्छा कारण है तो केवल Windows इंस्टालर का उपयोग करें।

ध्यान दें कि जीएसी में असेंबली स्थापित करने के लिए समर्थन कुछ गैर विंडोज इंस्टालर सेटअप टूल्स (जैसे इनोसेटअप) के लिए गायब हो सकता है।

0

I LOVE Inno सेटअप के लिए का उपयोग किया गया। "इस्तेमाल किया" पर जोर।

जब आप एकल फ़ाइल इंस्टॉलर चलाते हैं (जो आप आमतौर पर करते हैं), यह वास्तविक सेटअप प्रोग्राम को अस्थायी फ़ोल्डर के नीचे किसी फ़ोल्डर में अनपैक करता है और फिर इसे निष्पादित करने का प्रयास करता है। समस्या यह है कि ... कुछ एंटी-वायरस प्रोग्राम इस अनुमति नहीं देते हैं।

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

फिर से।लेखक इस बारे में जानते हैं और सुझाव देते हैं कि मैं अपने उपयोगकर्ताओं को इंस्टॉलेशन के दौरान अपने एंटी-वायरस प्रोग्राम बंद करने के लिए कहता हूं। (जैसा कि होने वाला है)

+4

एंटी-वायरस सॉफ़्टवेयर के साथ यह एक समस्या है। आईएनएनओ सेटअप क्या कर रहा है पूरी तरह से उचित और वैध काम करने के लिए है। यह अस्थायी रूप से अस्थायी फ़ोल्डर में सबकुछ से बेहतर है और वहां से चलाया जाता है। – bruceatk

1

किसी प्रोग्राम के लिए एक पूर्ण सेटअप पैकेज बनाना लगभग एक विषय क्षेत्र है। विचार करने के कई कारक हैं और हम में से अधिकांश विंडोज 95 नहीं चला रहे हैं। दुनिया उतनी सरल नहीं है जितनी बार एक बार थी।

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

एक अन्य कारक यह है कि रजिस्ट्री का उपयोग करने का तरीका बदल गया है। मैं रजिस्ट्री वर्चुअलाइजेशन के बारे में बात नहीं कर रहा हूं, हालांकि इसका भी हिस्सा है। लेकिन COM पंजीकरण प्रति मशीन और प्रति उपयोगकर्ता दोनों ही किया जा सकता है और यहां तक ​​कि यूएसी बंद करने से भी इसे मक्का मिल सकता है। Per-User COM Registrations and Elevated Processes with UAC on Windows Vista SP1 देखें। नतीजा यह है कि एक सेटअप पैकेज regsvr32 नहीं चलाना चाहिए (या अन्यथा COM पुस्तकालय के स्वयं-reg प्रविष्टि को कॉल करना)। SelfReg Table पर "टिप्पणियां" देखें।


Windows इंस्टालर ज्यादातर मामलों में आगे जाने के लिए तरीका है। वीबी 6 प्रोग्रामर में विजुअल स्टूडियो इंस्टालर 6.0 संस्करण 1.1 एमएसआई पैकेज बनाने के लिए मुफ्त डाउनलोड के रूप में उपलब्ध है। कुछ मूल्यवान जानकारी के लिए वीएफपी आलेख Using Microsoft Visual Studio Installer for Distributing Visual FoxPro 6.0 Applications पर "COM सर्वर" देखें।

यह सबसे आसान विकल्प नहीं है लेकिन मूलभूत जानकारी प्राप्त करने में सहायता के लिए वीएसआई 1.1 में एक वीबी सेटअप विज़ार्ड है। एक [CommonAppData] उपफोल्डर बनाने जैसी उन्नत चीजों को करना और आईडीई के बाहर एक पोस्ट-बिल्ड चरण में इसे हर किसी के अधिकार पर सेट करना है। यही वह जगह है जहां तीसरे पक्ष के उपकरण ओर्का या पोस्ट-बिल्ड इंस्टालर स्क्रिप्ट का उपयोग किए बिना आपको अधिक नियंत्रण देने के लिए उपयोगी हो सकते हैं।

स्क्रिप्ट किए गए "विरासत" इंस्टॉलर बनाने वाले लोग बनाए रखने की कोशिश करते हैं, लेकिन पटकथा अधिक जटिल हो जाती है। परिणाम कभी-कभी iffy होते हैं। विंडोज 7 अपने स्वयं के कुछ नए झुर्रियों को पेश करता है।

जबकि क्लिकऑन वास्तव में वीबी 6 के लिए सबसे अच्छा विकल्प नहीं है, कुछ भी नहीं कहता है कि आप कई कार्यक्रमों के एक्सकॉपी इंस्टॉलेशन के लिए reg-free COM का उपयोग नहीं कर सकते हैं। रीज-फ्री COM उस मामले के लिए इंस्टॉलर पैकेज में उपयोग के लिए भी एक अच्छा विकल्प हो सकता है।


अंत में

तो "सरल" जिस तरह से VB6 कार्यक्रमों को तैनात करने की शायद reg मुक्त कॉम XCopy संकुल एक आत्म निकालने EXE में लिपटे है कि एक प्रारंभ मेनू शॉर्टकट बनाना एक स्क्रिप्ट बंद को सक्रिय कर देगा होने जा रहा है । यदि आप शॉर्टकट के बिना जी सकते हैं तो यह भी आसान है: पैकेज को अनजिप करें जहां इसे जाना है!

Make My Manifest या reg-free COM पैकेजिंग के लिए वैकल्पिक उपकरण देखें।

यह आवश्यक है कि लक्ष्य सिस्टम XP (अधिमानतः एसपी 2) या बाद में चल रहे हों। यहां एकमात्र संभावित गड़बड़ यह है कि XP ​​में XP SP3 तक VB6 SP6 रनटाइम शामिल नहीं थे, इसलिए आप पहले अपने प्रोग्राम को VB6 SP5 रनटाइम्स के विरुद्ध परीक्षण करना चाहेंगे। खैर एक और गड़बड़: आप इस तरह ActiveX EXEs का उपयोग नहीं कर सकते हैं, उन्हें अभी भी पंजीकरण की आवश्यकता है।

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