请问一下如何动态调用com的接口,希望能具体一点,最好有具体的代码,谢谢各位。

解决方案 »

  1.   


      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");
      

  2.   

    需要不注册com组件动态调用,并需要提供如何调用接口方法。比如com有一个接口方法名为init,如何去调用?
      

  3.   

    不注册也叫com吗?com有一个接口方法名为init,那就定义一个C#的接口对应它:
    或者用反射吧