2010-07-14 8 views
10

मैं लाइब्रेरी का संदर्भ दिए बिना प्रोग्राम पहचानकर्ता या प्रोगिड (जैसे "Word.Aplication") से C# 4.0 में गतिशील COM/OLE/ActiveX ऑब्जेक्ट कैसे बना सकता हूं?सी # 4, गतिशील कीवर्ड, और देर से बाध्यकारी के लिए CreateObject समकक्ष?

सी # 3.5 में मैं जैसे

Type comObjectType = Type.GetTypeFromProgID(progId, true); 
Activator.CreateInstance(comObjectType); 

कुछ लिखने के लिए होगा कि इसमें क्या करना सी # 4.0 ताकि एक आसान तरीका मैं प्रकार गतिशील के एक चर को असाइन कर सकें (गतिशील कीवर्ड का उपयोग) है ?

उत्तर

14

क्या

dynamic myTypeInstance = Activator.CreateInstance(Type.GetTypeFromProgID(typeName, true)); 

साथ गलत क्या है?

यदि यह एक जाना जाता प्रकार का नाम है, वहाँ भी है

dynamic myTypeInstance = Activator.CreateInstance("typeName", "assemblyName"); 
+0

(भी किसी भी सीपीयू) बहुत ठीक काम करता है। धन्यवाद। – harveyt

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