installer - 7-ज़िप इंस्टॉलर पैकेज बनाने में त्रुटि




7zip sfx (2)

अगर यह पूछने का सही स्थान नहीं है, तो मैं माफी चाहता हूं।

इंस्टॉलर पैकेज बनाने के लिए मैं 7zip का उपयोग करता हूं। हाल ही में, मेरा कंप्यूटर अपडेट किया गया था, और मैं अब इसे काम करने के लिए नहीं ला सकता। मैं स्थापना पैकेज बनाने के लिए Visual Studio 2010 से एक Windows इंस्टालर का उपयोग करता हूं, जिसे मैं setup.7z नामक फ़ाइल में जोड़ता हूं। मैंने पुष्टि की है कि फाइलें सही ढंग से संग्रहीत हैं। मैं फिर फोन करता हूं

copy /b 7zsd.sfx + config.txt + setup.7z setup.exe

जो " setup.exe " नामक एक फ़ाइल में सब कुछ पैकेज करता है। इस पर क्लिक करने से इंस्टॉलर शुरू हो जाएगा।

अपडेट के बाद, मैं अभी भी फाइल बना सकता हूं, और यह ठीक लग रहा है। हालांकि, अगर मैं इस पर क्लिक करने की कोशिश करता हूं, तो मुझे एक संदेश मिलता है जिसमें कहा जाता है कि 7-Zip: Unsupported method.

मेरे पास 7-ज़िप संस्करण 18.05 (x86) स्थापित है। ईमानदारी से, मुझे यकीन नहीं है कि मुझे 7zsd.sfx फ़ाइल कहां मिली, लेकिन याद रखें कि इसका शिकार करना कम है। इसका कोई संस्करण नहीं है, लेकिन अंतिम बार 7/13/2007 को संशोधित किया गया था। मुझे नहीं पता कि संस्करण मायने रखता है, क्योंकि आपको 7-ज़िप स्थापित करने की आवश्यकता नहीं है क्योंकि यह एक स्व-निष्कर्षण फ़ाइल है। हालाँकि, यह हो सकता है कि पुराना संस्करण नए संस्करण द्वारा ज़िपित कुछ को अनज़िप करने में सक्षम न हो।


मुझे लगता है कि समस्या 7zip और 7zip.sfx के विभिन्न संस्करणों में है। दुर्भाग्य से SFX फ़ाइल हाल के 7zip पैकेजों में अनुपस्थित है। यहाँ कुछ पुराने संस्करण से 7zip_extra का link है जिसमें इंस्टॉलर बनाने के लिए SFX फ़ाइल और .bat फ़ाइल दोनों हैं। मेरे लिए ठीक काम करता है।


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

7-Zip

अनुमान लगाएं : पहले C / C ++ रनटाइम इंस्टॉल करें और देखें कि क्या समस्या दूर हो गई है। अगला संपीड़न देखें - और फिर नीचे वर्णित के रूप में LZMA एसडीके ?

असमर्थित संपीड़न? : 7-ज़िप: असमर्थित विधि - LZMA का उपयोग करें? मुझे लगता है कि यह समस्या अभी भी हो सकती है, हालांकि यह जवाब कुछ साल पुराना है।

गुम रंटाइम? : आप उस setup.exe पर निर्भरता वॉकर की जांच भी कर सकते हैं, यह देखने के लिए कि क्या यह बॉक्स पर गायब है (उदाहरण के लिए MSVCRT.dll - या अन्य रनटाइम लाइब्रेरी) पर निर्भर करता है। बस उपकरण डाउनलोड करें। प्रयोग करने में आसान। या शायद पहले install commonly used C/C++ runtimes को install commonly used C/C++ runtimes प्रयास करें। इसके अलावा, निर्भरता वॉकर उम्र बढ़ने और समय पर कचरा दिखाता है। नई Dependencies - लेकिन यह अभी तक काफी प्राइम-टाइम नहीं है, लेकिन इसे आज़माएं (क्लिक करें Releases टैब)। इसे Windows API- सेट और WinSxS (साइड-बाय-साइड असेंबली) को संभालने के लिए अपडेट किया गया है। नोट : virustotal.com पर कई सुरक्षा सॉफ़्टवेयर डिपेंडेंसी को " जोखिम उपकरण, वायरस नहीं " के रूप में पहचानते हैं (यह खुला स्रोत है)।

LZMA SDK : 7zSD.sfx फ़ाइल संभवतः LZMA SDK से होगी । और आपके द्वारा वर्णित कमांड लाइन को मुख्य 7-ज़िप मदद फ़ाइल में पाया जा सकता है (एसडीके नहीं, लेकिन नियमित 7-ज़िप इंस्टॉलेशन के साथ आने वाला)। धारा "-sfx (Create SFX archive) switch" : Command Line Version => Switches => -sfc (Create SFX Archive

वैकल्पिक

विजुअल स्टूडियो 2017 : विजुअल स्टूडियो का नवीनतम, मुफ्त संस्करण: विजुअल स्टूडियो कम्युनिटी 2017 अपने Microsoft Visual Studio 2017 इंस्टॉलर प्रोजेक्ट्स के माध्यम से setup.exe फाइलें बना सकता है (विजुअल स्टूडियो 2017 को स्थापित करने के बाद यह एक्सटेंशन इंस्टॉल होना चाहिए)।

वाईएक्स : ओपन सोर्स वाईएक्स टूलकिट अपने बर्न कंपोनेंट के साथ setup.exe फाइलें बना सकता है। एक वाईएक्स एक्स एड-हॉक नमूना - बस सामान्य विचार प्राप्त करने के लिए - इसमें एक सीखने की अवस्था है। कोई GUI आपकी सहायता के लिए नहीं है, यह सभी XML- आधारित है। Visual Studio के साथ या उसके बिना उपयोग करें।

एडवांस्ड इंस्टॉलर : मेरा मानना ​​है कि एडवांस्ड इंस्टॉलर अपने फ्री वर्जन में भी setup.exe संकलित कर सकते हैं। कुछ बड़े डाउनलोड के बावजूद, मुझे लगता है कि यह आपके लिए काम करेगा और त्वरित होगा।

उन्नत इंस्टालर पर अद्यतन : नि : शुल्क संस्करण केवल MSI फ़ाइलों का निर्माण कर सकता है, EXE बूटस्ट्रैपर्स को भुगतान किए गए संस्करणों (उनमें से कोई भी) के साथ बनाया जा सकता है।

dotNetInstaller : डॉटनेटइन्स्टालर सेटअप बूटस्ट्रैपपर भी है - जिसका मैंने कभी इस्तेमाल नहीं किया। यहाँ यह github.com (स्रोत) पर है।

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

IExpress एट अल: सुरक्षा कमजोरियां हैं जो इन स्व-निष्कर्षण पैकेजों को प्रभावित करती हैं। एक और कारण मैं ऐसी चीजों को जल्दी से ठीक करने के लिए समर्पित संसाधनों के साथ एक "वास्तविक" परिनियोजन उपकरण की सिफारिश करता हूं, बावजूद कि setup.exe होने की सुंदरता को सीधे 7-ज़िप में खोला जा सकता है।

फ़ाइल निकालना

विभिन्न प्रकार की setup.exe फ़ाइलों से फ़ाइलों को निकालने के विषय पर:

  • MSI : EXE से MSI निकालें - सभी MSI फाइलें निकाली जा सकती हैं, और setup.exe फाइलें WiX के साथ भी निकाली जा सकती हैं
  • NSIS & Inno : ऐसा लगता है कि NSIS 7-ज़िप (कम्प्रिहेंसिव कम्प्रेशन) के साथ संगत फाइलें बनाता है, न कि इनो के लुक से।

कुछ लिंक :

  • https://en.wikipedia.org/wiki/Self-extracting_archive#Overview : " एक विघटन उपयोगिता के लिए या तो स्वयं-निष्कर्षण या मानक विविधता के संग्रह का सही ढंग से विस्तार करने के लिए, इसे फ़ाइल प्रारूप और दोनों पर संचालित करने में सक्षम होना चाहिए एल्गोरिथ्म का उपयोग किया जाता है। एक आत्म-निकालने वाले संग्रह की शुरुआत में रखा गया सटीक निष्पादन योग्य कोड इसलिए संग्रह बनाने के लिए उपयोग किए जाने वाले विकल्पों के आधार पर विविध होने की आवश्यकता हो सकती है । LZMA2 की तुलना में डिकम्प्रेसन दिनचर्या एक LZMA 7z संग्रह के लिए अलग होगी। उदाहरण के लिए 7z संग्रह। "