如何在应用程序中的c#form和vb6.0表单之间进行通信或调用?

时间:2015-05-08 01:30:32

标签: c# vb6

我创建了一个c#mdi表单的应用程序,它动态调用vb6 dll。并且vb6 dll有几百个 如何在c#form和vb6表单之间进行通信或调用?

1 个答案:

答案 0 :(得分:2)

只要注册了COM,就可以使用Interop to call your VB6 code

  

COM Interop提供对现有COM组件的访问,而无需修改原始组件。如果要将COM代码合并到托管应用程序中,请使用COM Interop实用程序(TlbImp.exe)导入相关的COM类型。导入后,COM类型即可使用。   此外,COM Interop允许COM开发人员访问托管对象,就像访问其他COM对象一样容易。同样,COM Interop提供了一个专用实用程序(RegAsm.exe),它将托管类型导出到类型库中,并将托管组件注册为传统的COM组件。   在运行时,公共语言运行库根据需要在COM对象和托管对象之间封送数据。

我在将一个非常大的VB6应用程序分阶段移植到C#时做到了这一点,并确认它适用于复杂的应用程序。