微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

C#等效于JScript的新ActiveXObject

我试图在C#中使用JScript.NET中的新ActiveXObject()功能.我怎样才能做到这一点?

并且不要说用COM对象可以做的任何事情都可以在C#中完成.如果我想这样做,我已经有了.

解决方法

您可以使用创建COM对象的实例

Activator.CreateInstance(Type.GetTypeFromProgID(ProgID))

然后使用后期绑定与他们合作.例如:

using System.Reflection;
...

Type wshType = Type.GetTypeFromProgID("WScript.Shell");
object wshShell = Activator.CreateInstance(wshType);
wshType.InvokeMember("Popup",BindingFlags.InvokeMethod,null,wshShell,new object[] {"Hello,world!"});

或者,使用C#4的动态关键字:

// NB: Add reference to Microsoft.CSharp.dll
dynamic wshShell = Activator.CreateInstance(Type.GetTypeFromProgID("WScript.Shell"));
wshShell.Popup("Hello,world!");

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐