VB6 миграция to.Net с помощью Visual Studio 2010

кто-нибудь перенес проект VB6 в .Net с Visual Studio 2010?

я протестировал миграцию в VS2005, но полученный .Net-код был настолько перепутан, что мы решили не мигрировать.Сеть. Итак, мастер миграции VS2010 был улучшен по сравнению с мастером в VS2005 или VS2008?

6 ответов


Это, конечно, не в 2008 году, и я был бы очень удивлен, если бы это изменилось в 2010 году.

VB6 и VB.net это совершенно разные языки, и MS никогда официально не одобряла автоматический маршрут миграции для чего-либо, кроме простых приложений. Путь миграции нетривиален. Есть несколько компаний, которые предлагают миграционные службы, я не пробовал их, но мой совет будет управлять им самостоятельно.

в настоящее время у нас есть несколько приложений, которые написаны в основном в VB6. Наша позиция заключается в том, что существующий рабочий код не переносится в .net без уважительной причины, но весь новый код должен быть написан в .net (мы фактически выбрали C#)

Это означает, что если мы хотим добавить новую функцию в существующее приложение VB6, функция должна быть реализована в .net с некоторым взаимодействием. Постепенно со временем приложения становятся все больше и больше .net и все меньше и меньше VB. У нас есть 1 приложение, которое просто имеет крошечный компонент VB6 сейчас, а остальное почти полностью в .net благодаря этому подходу постепенной миграции. Это сработало очень хорошо для нас. Как только мы достигнем стадии, когда часть VB6 минимальна, мы просто вручную преобразуем оставшийся код без высокой стоимости, потому что осталось совсем немного.


как многие отметили, Я очень сомневаюсь, что будет сделано гораздо больше работы над Мастером обновления VB6. Мастер обновления VB6 в Visual Studio на самом деле является сокращенной версией ArtinSoft Visual Basic Upgrade Companion.

обновление нетривиального приложения VB6-довольно трудоемкая задача, но есть ряд замечательных статей, таких как эта, которые могут помочь сгладить дорогу для вас:

Рефакторинга Путь к успеху миграции (VSM)

сочетание хорошей методологии и профессиональных инструментов, таких как ArtinSoft и Архитекторы Код надеюсь на успешный результат.


Visual Studio 2010 больше не поставляется средство мастера миграции Visual Basic 6, Как упоминалось здесь в верхнем пункте. Эта страница содержит ссылки на список предлагаемых инструментов миграции 3rd party VB6.


Я бы серьезно сомневался в этом, VB10 не представил никаких функций от VB6, которые не присутствовали в VB7, 8 или 9, поэтому для них не было бы никаких новых причин обновлять их (возможно, неадекватный) мастер обновления, который не существовал в 2005 году.


поскольку VS2010 все еще находится в бета-версии, трудно сказать, как будет работать конечный продукт. Прямо сейчас, похоже, что миграционный код все еще немного скалистый.

Я иду на Лимб и говорю, что VS2010 не будет лучше импортировать что-то старое, как проект VB6, чем предыдущие версии. Скорее всего, независимо от того, что произойдет, вам все равно придется переписать значительную часть этого приложения, чтобы получить какую-либо выгоду от .NET.


преобразование Visual Studio VB 6 в лучшем случае пятнисто, из-за некоторых фундаментальных изменений языка. Вы можете найти лучший успех, глядя на сторонний инструмент, такой как Партнер VBMigration