C#如何动态调用com的问题

WangZWang 2013-08-05 11:11:22
请问一下如何动态调用com的接口,希望能具体一点,最好有具体的代码,谢谢各位。
...全文
132 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
likofans 2013-08-05
  • 打赏
  • 举报
回复
引用 2 楼 WangZWang 的回复:
需要不注册com组件动态调用,并需要提供如何调用接口方法。比如com有一个接口方法名为init,如何去调用?
不注册也叫com吗? com有一个接口方法名为init,那就定义一个C#的接口对应它: 或者用反射吧
WangZWang 2013-08-05
  • 打赏
  • 举报
回复
需要不注册com组件动态调用,并需要提供如何调用接口方法。比如com有一个接口方法名为init,如何去调用?
likofans 2013-08-05
  • 打赏
  • 举报
回复

  Type comType = Type.GetTypeFromProgID(GUID);
  object comObj = null;
  if (comType != null)
  {
    try
    {
      comObj = Activator.CreateInstance(comType);
    }
    catch (Exception ex)
    {
      Debug.Fail("Cannot create COM object due to the following exception: " + ex, ex.Message + "\n" + ex.StackTrace);
      throw ex;
    }
  }
  else
    throw new ArgumentException("The GUID does not match a registetred COM object", "GUID");

PaulyJiang 2013-08-05
  • 打赏
  • 举报
回复
支持反射一个 坐等其他答案

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧