[英]Contain a VB6 form in a .Net MDI
我正在将一个旧的VB6应用程序移植到.Net中,但是一个Vb6表单太大,无法在此版本中进行迁移。
我对Vb6 exe进行了外壳处理,以显示来自.Net的VB6表单,但VB6表单未包含在.Net MDI中。 我有一种直觉,感觉不可能将VB6表单嵌入.NET MDI中 ,有人知道这是否可行吗?
我正在寻找诸如Interop Forms Toolkit 2.1甚至API之类的东西
确实有可能。 这既不简单,也不是一个特别好的主意...
您需要为该表单创建ActiveX容器,然后可以将其嵌入VB 6表单。 有关详细信息,请参见CodeCode上的本文: 在.NET应用程序中嵌入VB6表单
另一种可能的方法(并且明显更简单)是将VB 6表单的父级设置为.NET MDI容器。 我实际上不确定这是否行得通(我从未尝试过),但是值得一试。 您需要P /调用FindWindow
函数来获取VB 6表单窗口的句柄,以及SetParent
函数来更改其父窗口。
抱歉,我发布得太早了,这里是解决方法:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.