【发布时间】:2025-12-09 10:00:02
【问题描述】:
我有一个需要迁移到 VB.NET 的 VB6 项目。
我尝试使用 VB.NET express 2005 和 2008 的迁移工具,结果相同。
当我尝试在设计器模式下在迁移的结果项目中打开包含 videosoft 的 vsindextab 组件的表单时,我收到以下错误:
Warning 1 Unknown name. (Exception from HRESULT: 0x80020006 (DISP_E_UNKNOWNNAME)) C:\gestionbtdotnet\FormBT.Designer.vb 261 0
错误的行在designer.vb文件中,如下:
CType(Me.vsIndexTab1, System.ComponentModel.ISupportInitialize).BeginInit()
(vsIndexTab 是一个 vsOcx6lib.vsindextab 对象)
我在整个网络上搜索了它,但找不到任何东西。
我尝试使用不同的 .NET Framework 版本,我尝试将 ocx 文件 (vsocx6.ocx) 复制到每个可能的位置,我尝试简单地擦除错误的行。
没有运气。
谁能帮帮我?
【问题讨论】:
-
您只能迁移代码。依赖于仅二进制的第三方组件(如
vsindextab)的项目将不会迁移。您必须找到该组件的替代品,并重新编写代码以使用新组件,或者至少从任何设计时使用中删除该组件并构建自定义dllimport代码以在运行时使用该组件。 -
@JoelCoehoorn - 对于这个问题,这听起来是一个很好的答案。
-
是的,但这并不能解决他的问题,所以我不愿意将其添加到答案空间。也许如果我能推荐一个合适的 .Net 替代品,它会更有意义。
-
好的,我能够改进评论以呈现选项。这更适合作为“答案”:)
标签: vb.net vb6 windows-forms-designer vb6-migration