从C#.NET调用VB6 Active X DLL

时间:2015-10-08 20:33:09

标签: c# winforms vb6 vb6-migration

我有一个VB6项目,里面有10个表单。我需要从我的.Net 2.0 C#代码中调用这个VB6表单。

我接下来的步骤:

  1. 创建了我的VB6项目的ActiveX DLL。
  2. 在系统中注册DLL。
  3. 创建了DLL类的对象,并尝试调用from的函数从.NET打开
  4. 我使用下面的代码来调用VB6表单:

     Type obj = Type.GetTypeFromProgID(strObjectType);
       object ins = Activator.CreateInstance(Type.GetTypeFromProgID(strObjectType));
       obj.InvokeMember(strInvoke, BindingFlags.InvokeMethod, null, ins, null);
    

    调用VB6中的函数并在内部调用Form1.Show,它给出了错误:

      

    非模态表单无法从ActiveX DLL,ActiveX控件或属性页显示在此主机应用程序中

    需要帮助来解决此问题。

0 个答案:

没有答案