有人使用Visual Studio 2010将VB6项目迁移到了.Net平台吗?
我已经在VS2005中测试了迁移,但生成的.Net代码很混乱,我们决定不迁移到.Net。所以,VS2010迁移向导是否比VS2005或VS2008中的向导更加完善?
有人使用Visual Studio 2010将VB6项目迁移到了.Net平台吗?
我已经在VS2005中测试了迁移,但生成的.Net代码很混乱,我们决定不迁移到.Net。所以,VS2010迁移向导是否比VS2005或VS2008中的向导更加完善?
2008年时,它肯定没有,如果2010年也没有的话,我会感到非常惊讶。
VB6和VB.net是完全不同的语言,微软从未正式支持过任何超出简单应用程序的自动迁移路线。迁移路径较为复杂。有几家公司提供迁移服务,但我建议您自己管理。
我们目前有几个主要使用VB6编写的应用程序。我们的立场是只有在有充分理由的情况下才将现有的工作代码迁移到.net,但所有新代码必须使用.net编写(我们实际上选择了C#)。
这意味着,如果我们想要向现有的VB6应用程序添加新功能,就必须使用一些交互操作在.net中实现该功能。随着时间的推移,我们的应用程序越来越多地使用.net,而越来越少使用VB。我们有一个应用程序现在仅有一个微小的VB6组件,其余几乎全部使用.net,这得益于这种渐进式的迁移方法。这对我们非常有效。一旦我们达到VB6部分很小的阶段,我们只需手动转换剩余的代码,成本不高,因为只剩下一小部分。
由于VS2010仍处于测试版阶段,很难说最终产品的表现如何。目前看来,迁移代码仍有些不稳定。
我冒险说,与以前的版本相比,VS2010在导入像VB6项目这样古老的东西方面并不会更好。无论发生什么,您都需要重写该应用程序的大部分内容才能从.NET中获得任何好处。
Visual Studio 对 VB 6 的转换效果最多只能算是勉强,因为一些基本语言的变化。你可能会发现使用第三方工具,比如 VBMigration Partner,会取得更好的成功。