मैं आईएल लिखने की कोशिश कर रहा हूं जो mscorlib में विधियों को कॉल करता है, लेकिन मैं ModuleDefinition
को mscorlib को वास्तव में & विधियों के संदर्भ में संदर्भित करने के तरीके को समझ नहीं सकता, और दस्तावेज़ & Google की कमी है।मोनो-सेसिल: मैं mscorlib के लिए मॉड्यूल परिभाषा कैसे प्राप्त कर सकता हूं?
8
A
उत्तर
8
mscorlib के लिए मॉड्यूल परिभाषा प्राप्त करना बहुत आसान है। यहाँ एक आसान तरीका है:
ModuleDefinition corlib = ModuleDefinition.ReadModule (typeof (object).Module.FullyQualifiedName);
लेकिन अगर आप कोड है कि mscorlib में तरीकों बुला रहा है इंजेक्षन, आप जरूरी मॉड्यूल अपने आप को लोड करने के लिए नहीं है। उदाहरण के लिए:
MethodDefinition method = ...;
ILProcessor il = method.Body.GetILProcessor();
Instruction call_writeline = il.Create (
OpCodes.Call,
method.Module.Import (typeof (Console).GetMethod ("WriteLine", Type.EmptyTypes)));
कंसोल कॉल करने के लिए एक निर्देश बनाता है। राइटलाइन();
प्रलेखन के लिए, कृपया विकी पर importing पृष्ठ पढ़ें।
संबंधित मुद्दे
- 1. प्रतिबिंब का उपयोग करके जेनेरिक प्रकार की सही टेक्स्ट परिभाषा कैसे प्राप्त कर सकता हूं?
- 2. मैं प्रतिनिधि कैसे प्राप्त कर सकता हूं?
- 3. mscorlib संदर्भ के लिए उत्सुक
- 4. मैं नोड मॉड्यूल कैसे डिबग कर सकता हूं?
- 5. मैं SQL सर्वर में किसी ट्रिगर की परिभाषा (बॉडी) कैसे प्राप्त कर सकता हूं?
- 6. मैं लिनक्स कर्नेल मॉड्यूल के अंदर बैटरी स्तर कैसे प्राप्त कर सकता हूं?
- 7. मैं पर्ल मॉड्यूल निर्भरताओं का प्रबंधन कैसे कर सकता हूं?
- 8. पायथन में, मैं आयातित मॉड्यूल से मुख्य मॉड्यूल के नेमस्पेस को कैसे एक्सेस कर सकता हूं?
- 9. मैं पर्ल मॉड्यूल को अनलोड कैसे कर सकता हूं?
- 10. मैं web2py में मॉड्यूल का उपयोग कैसे कर सकता हूं?
- 11. मैं apache2 मॉड्यूल को कैसे अनइंस्टॉल कर सकता हूं?
- 12. मैं अपने मॉड्यूल को खोजने के लिए मॉडप्रोब को कैसे कॉन्फ़िगर कर सकता हूं?
- 13. मैं ओडाटा डिलीट को काम करने के लिए कैसे प्राप्त कर सकता हूं?
- 14. मैं फॉर्म प्रोग्राम के तर्क कैसे प्राप्त कर सकता हूं?
- 15. मैं कल के एनएसडीएटी को कैसे प्राप्त कर सकता हूं
- 16. मैं एक स्थापित पर्ल मॉड्यूल का संस्करण और स्थान कैसे प्राप्त कर सकता हूं?
- 17. आरईपीएल परिभाषाओं को देखने के लिए मैं स्कैला टूलबॉक्स कैसे प्राप्त कर सकता हूं?
- 18. ब्राउज़र से प्राप्त शीर्षलेख प्रदर्शित करने के लिए मैं PHP कैसे प्राप्त कर सकता हूं?
- 19. ऑब्जेक्ट के इंस्टेंटेशन के मॉड्यूल नाम के बजाय मैं किसी ऑब्जेक्ट की क्लास परिभाषा का मॉड्यूल नाम कैसे प्राप्त करूं?
- 20. मैं पूरे प्रकार के लिए चेतावनियों को दबाने के लिए FxCop कैसे प्राप्त कर सकता हूं?
- 21. मैं सभी प्रतीक नामों के लिए उपसर्ग जोड़ने के लिए जीसीसी कैसे प्राप्त कर सकता हूं
- 22. मैं परस्पर निर्भर मॉड्यूल प्रबंधित करने के लिए एमईएफ का उपयोग कैसे कर सकता हूं?
- 23. क्या मैं एक और सीएसएस परिभाषा में एक सीएसएस परिभाषा शामिल कर सकता हूं?
- 24. प्रतिबिंब के माध्यम से mscorlib 2.0.5.0 (उर्फ सिल्वरलाइट mscorlib) में प्रकार प्राप्त करना?
- 25. मैं डिफ़ॉल्ट विभाजक कैसे प्राप्त कर सकता हूं?
- 26. मैं पर्ल में ट्रेसबैक कैसे प्राप्त कर सकता हूं?
- 27. मैं अपना पंजीकरण आईडी डिवाइस कैसे प्राप्त कर सकता हूं
- 28. मैं उपलब्ध बैंडविड्थ दर कैसे प्राप्त कर सकता हूं?
- 29. मैं एक जीएडीटी में साझाकरण कैसे प्राप्त कर सकता हूं?
- 30. मैं किसी विधि का संदर्भ कैसे प्राप्त कर सकता हूं?
एक्सेल, धन्यवाद! मुझे एहसास नहीं हुआ कि आप .NET प्रतिबिंब वस्तुओं का भी उपयोग कर सकते हैं। सेसिल दस्तावेज आने के लिए काफी मुश्किल है:/ – thecoop
ध्यान रखें कि यह कोड निष्पादन असेंबली के .NET संस्करण के लिए mscorlib से विधि आयात करेगा। इसलिए यदि आप .NET 2.0 असेंबली खोलते हैं और .NET 4.0 के तहत उपर्युक्त कोड चलाकर इसे संशोधित करते हैं, तो संशोधित असेंबली में 2.0 और 4.0 mscorlib दोनों के संदर्भ होंगे, जो संभवतः नहीं था। –