VB6 переносится на .Net с Visual Studio 2010

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

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

Ответы

Ответ 1

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

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

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

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

Ответ 2

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

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

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

Комбинация хорошей методологии и профессиональных инструментов, таких как ArtinSoft и Code Architects, мы надеемся сделать успешный результат.

Ответ 3

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

Ответ 4

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

Ответ 5

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

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

Ответ 6

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