某一个C++开发的OCX控件,在VB中调用,有一些比较不错的功能,但是用.Net调用,却发现只剩下为数不多的一些方法了——其他的都看不到,查看一下,某些类,已经是灰色的了。这是为何呢??C++代码我有,但是看不懂,呵呵~~一般问题在哪里,需要怎么修改??

解决方案 »

  1.   

    觉得应该可以在.net里通过反射动态的调用OCX控件,例如对Excel的调用可以如下:
    Type objClassType = Type.GetTypeFromProgID("Excel.Application");
    if (objClassType!=null)
    {
        objApp = Activator.CreateInstance(objClassType);
    }TO楼主,对你来说应该算小事一桩吧。
      

  2.   

    反射动态的调用OCX控件,应该没有问题,关键我不理解为何VB和.Net调用会有差异。难道是代码安全性上有所区别??该控件为微软的DsoFramer,把Office系列嵌入到程序中。C++.Net的源代码。我用的是VB.Net ,2005版本。