CreateObject等同于C#4,动态关键字和后期绑定? [英] CreateObject equivalent for C# 4, dynamic keyword, and late binding?

查看:310
本文介绍了CreateObject等同于C#4,动态关键字和后期绑定?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何在不引用库的情况下从程序标识符或ProgID(例如Word.Application)在C#4.0中创建动态COM / OLE / ActiveX对象?

How do I create a dynamic COM/OLE/ActiveX object in C# 4.0 from a program identifier or ProgID (such as "Word.Application") without referencing a library?

在C#3.5中,我必须编写类似

In C# 3.5 I'd have to write something like

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

在C#4.0中有更简单的方法,所以我可以将它分配给一个类型的变量动态(使用动态关键字)?

Is there an easier way to do it in C# 4.0 so I can assign it to a variable of type dynamic (using the dynamic keyword)?

推荐答案

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

还有

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

这篇关于CreateObject等同于C#4,动态关键字和后期绑定?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆