2011-07-19 15 views
5

मैंने एक दृश्य स्टूडियो 2010 प्रोजेक्ट बनाया है जो एक विंडोज़ फॉर्म बनाता है - यह कई अन्य डीएल का संदर्भ देता है।सी # विंडोज़ एप्लिकेशन से .exe बनाएँ

मैं इसे एक .exe फ़ाइल में कैसे लपेट सकता हूं?

+0

आप एक डीएलएल को स्थिर रूप से लिंक करना चाहते हैं? –

+0

आपको एक सेटअप फ़ाइल – Rasel

+0

@Rasel बनाना है: क्या? ओपी एक एकल स्वयं निहित exe चाहता है, एक इंस्टॉलर नहीं ... –

उत्तर

8

ILMerge वह है जो आप/t: exe विकल्प के साथ देख रहे हैं।

एक नमूना कॉल इस प्रकार दिखाई देगा: पर dotlesscss buildfile

और जानकारी:

ilmerge.exe exefile.exe [dlls-to-internalize.dll ..] /out:exefile-out.exe /t:exe

ILMerge का उपयोग कर जब अनेक DLLs ऊपर पैक करने के लिए और उन्हें internalizing का एक नमूना उपयोग यहां पाया जा सकता ILMerge का उपयोग ILMerge Website पर पाया जा सकता है। तुम भी के माध्यम से Chocolatey

यह आप संदर्भ दोबारा लिख ​​कर एक फाइल में कई .NET विधानसभाओं पैक करने के लिए अनुमति देता है NuGet के माध्यम से प्राप्त कर सकते हैं। यदि आप किसी के लिए लाइब्रेरी की आपूर्ति कर रहे हैं और आप आंतरिक रूप से उपयोग कर रहे पुस्तकालयों के साथ निर्भरता संघर्ष का कारण नहीं बनना चाहते हैं तो आप अपनी निर्भरताओं को भी आंतरिक बना सकते हैं।

+1

+1, हालांकि मुझे आपको चेतावनी देना है कि आईएलएमर्ज कुछ डीएलएल के बारे में परिचित है। आम तौर पर यह अच्छा रहा है हालांकि। –

1

तैनात ILMerge के रूप में एक विकल्प है, एक और Redgate आदि से "SmartAssembly" है

क्या इन सभी कर नहीं करते देशी DLLs internalizing है - अत: किसी भी निर्भरता है जो कि Windows API में एक सीमा है ... एक मूल डीएलएल को EXE के साथ भेजना होगा।

-3

पर जाएं आपका अनुप्रयोग> bin-> dubug-> yourapplicationname.exe यह स्वचालित रूप से उत्पन्न होता है, लेकिन रिलीज फ़ोल्डर से exe डिबग की कम जानकारी के कारण डिबग की तुलना में अधिक तेजी से होता है।

-2
1. Select Configuration Manager and check parameter such as debug/release or x86/new. 
    2.Select Release instead of debug from drop down menu near debug button(Visual studio framework). 
    3. Click on build and then build yourApplicationName. 
    4. Goto Your program folder->bin->release->yourApplicationName.exe. 
    5. yourApplicationName.exe is ready to use. 
    Thanks 
संबंधित मुद्दे