这个不是不可能,是太复杂,就想windows的程序要用在linux 一样

解决方案 »

  1.   

    VB6/VC6调用C#的组件肯定是可以的,将工程的“为COM INTEROP注册”设置为TRUE就可以了。我以前就试过在EXCEL中调用VB.NET的DLL,不过控件可能无法放到窗体上,因为无法在“添加控件”中找到,只能在“引用”中导入。另外必须装了DOTNET FRAMEWORK才能用。
      

  2.   

    一般来说,在IT技术界以及硬件产业,技术的更新换代速度非常得惊人,而惯例是所有的新技术都会遵循向下兼容的原则,但是.NET技术不仅仅做到了这一点,.NET甚至实现了相互之间的各自调用,这一点是非常难能可贵的。也就是说,不但我们可以在.NET组件中调用COM组件,同时也可以在COM组件中正常的调用.NET组件。这点带来的好处是显而易见的,一方面我们可以保持现有的技术资源,另一方面,在现有资源中可以利用.NET所带来的各种新技术使用Com+.使用regsvcs.exe将Dll注册到COM+ Services里面就可以实现.
      

  3.   

    我用regsvcs.exe注册未成功,提示:
    “警告:在程序集中未找到任何ServicedCcomponent派生类。
    <使用RegAsm注册ComVisible类型。>”之后,我又用RegAsm注册,成功了。提示:
    “成功注册了类型”但是,我在VB或VC中还是找不到控件,请大侠指点。谢谢!
      

  4.   

    用强命名程序集,不过需要安装。NET框架才可以,
    帮助文档里有的.
      

  5.   

    无须用regsvcs注册,编译时已经注册了。在VB中是在“引用”选择DLL文件。
      

  6.   

    你的.net组件要继承System.EnterpriseServices.ServicedComponent,在运行时会自动注册到com+服务里去,然后其他的语言工具就可以引用了
      

  7.   

    我对VC不熟悉,你看看这里吧,是MFC调用托管程序的例子:
    ms-help://MS.VSCC.2003/MS.MSDNQTR.2003FEB.2052/vcsample/html/vcsamMEventsSampleDemonstratesCreatingUsingManagedCEvents.htm