2011-01-16 6 views
19

क्या ऐसा करने के लिए कोई सॉफ्टवेयर है? मुझे इंटरनेट पर कोई उपयोगी जानकारी नहीं मिली, इसलिए मैं यहां पूछ रहा हूं।आप कक्षाओं के स्रोत कोड को एक डीएलएल फ़ाइल से कैसे निकालते हैं?

+0

मूल स्रोत कोड है कि संकलित किया गया था

आम तौर पर स्थित? बस संभव नहीं है। कुछ कार्यात्मक रूप से समकक्ष? हाँ। – delnan

+0

@ डेलन - कार्यशील रूप से समकक्ष से आपका क्या मतलब है? इस सब के लिए खेद है। मुझे यह नहीं मिला। मैं एक डीएलएल फ़ाइल से कक्षाओं (सी # .net में लिखा) कोड निकालना चाहता हूं। डीएलएल फ़ाइल बहुत सारे वर्गों की तरह मिल गया है। उस कोड को उस डीएल से बाहर निकालने का कोई तरीका? – ILoveMusic

+0

@ILoveMusic आप मूल कोड की तरह कुछ निकाल सकते हैं, लेकिन सटीक नहीं। .NET परावर्तक का प्रयोग करें। –

उत्तर

19

आपको सही कोड नहीं मिल सकता है, लेकिन आप इसका एक अपूर्ण संस्करण प्राप्त कर सकते हैं।

सबसे लोकप्रिय (और सबसे अच्छा) उपकरण Reflector है, लेकिन अन्य .Net decompilers (जैसे Dis#) भी हैं। आप ILDASM का उपयोग करके आईएल को भी संकुचित कर सकते हैं, जो नेट फ्रेमवर्क एसडीके टूल्स के साथ बंडल आता है।

+6

इन दिनों आपको शायद आईएलएसपी या डॉटपीक का उपयोग करना चाहिए। दोनों ** मुक्त ** हैं और एक उत्कृष्ट काम कर रहे हैं। मुझे नेविगेशन के कारण डॉटपीक बेहतर लगता है, और आईएलएसपी शुरू करने में भी काफी समय लगता है। इसके अलावा, मैंने एक बार एक असेंबली को अपमानित किया जिसे मैं अप्रचलित कर रहा था (परीक्षण उपकरणों के लिए) और रेडगेट का .NET परावर्तक सरलतम अस्थिरता से तुरंत दुर्घटनाग्रस्त हो गया। ILSpy और dotPeek कोई समस्या नहीं थी और इसे तुरंत लोड किया है। वे चयन को हाइलाइट करते हैं ताकि आप किसी भी तरह से obfuscation का प्रबंधन कर सकें। – MasterMastic

2

आप Reflector का उपयोग कर सकते हैं और प्रोजेक्ट में स्रोत कोड निकालने के लिए Add-InFileGenerator का भी उपयोग कर सकते हैं।

12

केवल प्रबंधित भाषाओं जैसे c# और Java पूरी तरह से नष्ट हो सकते हैं। आप पूर्ण स्रोत कोड देख सकते हैं। Win32 dll के लिए आपको सॉर्स कोड नहीं मिल सकता है।

CSharp dll उपयोग DotPeek यह becoz मुफ्त के लिए और एक ही ReDgate .Net Compiler रूप

मज़ा काम करता है।

0

है कि आप dll विधानसभा के अंदर ही कुछ मूल बातें जानना चाहते हैं जैसे क्लासेस, विधि इत्यादि, उन्हें डायनामिक रूप से लोड करने के लिए

आप माइक्रोसॉफ्ट द्वारा प्रदान किए गए आईएल डिस्सेबलर टूल का उपयोग कर सकते हैं। "C: \ Program Files (x86) \ माइक्रोसॉफ्ट SDKs \ Windows \ v7.0A \ बिन"

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