如何在C#4.0中从程序标识符或ProgID(如“Word.Application”)创建动态COM / OLE / ActiveX对象,而不引用库?
在C#3.5中,我必须写一些类似的东西
Type comObjectType = Type.GetTypeFromProgID(progId,true); Activator.CreateInstance(comObjectType);
在C#4.0中有没有更简单的方法,所以我可以将其分配给动态类型的变量(使用dynamic关键字)?
解决方法
怎么了
dynamic myTypeInstance = Activator.CreateInstance(Type.GetTypeFromProgID(typeName,true));
?
如果它是一个已知的类型名称,还有
dynamic myTypeInstance = Activator.CreateInstance("typeName","assemblyName");