Портирование файла .bas на vb.net - PullRequest
3 голосов
/ 21 февраля 2011

Я работаю над устаревшим кодом VB5 / VB6, и мне нужно конвертировать файл .bas в vb.net.

Я нашел несколько вариантов

  1. Скомпилируйте файл .bas в comll, а затем сделайте ссылку и используйте его в моем проекте. (Для этого, я думаю, мне понадобятся vb5 или vb6, которых нет в моем распоряжении)

  2. Скопируйте и вставьте содержимое файла в новый модуль на vb.net, а затем попробуйте устранить ошибки одну за другой.

Содержимое файла .bas ссылается на конкретную dll. Файл .bas содержит в основном объявления consts, types, sub's и functions.

Какой самый элегантный способ исправить это в vb.net. Это так же просто, как вариант 2.

EDIT

Я использовал VS2008 express и запустил код через мастер обновления, он сделал необходимое преобразование. и файл .bas был преобразован в .vb. Я взял этот файл и решил переписать другие части кода, включая некоторую переделку преобразованного файла .vb.

Другие вопросы, связанные с этим: здесь .

Ответы [ 3 ]

6 голосов
/ 21 февраля 2011

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

1 голос
/ 21 февраля 2011

Преобразование в vb.net имеет много преимуществ - совместимость с будущими (и, возможно, текущими) системами и удобство обслуживания являются наиболее важными.Основным преимуществом оставления его как dll будет экономия времени на разработку, но это может иметь неприятные последствия, если в будущем возникнут проблемы с совместимостью.

Если код находится в проекте VB6 сейчас или если его можно добавитьВо-первых, вы можете открыть файл проекта .vbp с помощью vb.net, и он спросит, хотите ли вы автоматически преобразовать его в vb.net.Это делает довольно хорошую работу, исключая сторонние дополнения.

1 голос
/ 21 февраля 2011

Microsoft предоставляет руководство о том, что делать, включая приложение, которое пытается преобразовать код VB6 в .NET

Это включает в себя оба ваших решения, за исключением того, что 2 помогает конвертер.

Это зависит от того, насколько сложен код VB6 и что он делает.

Однако, если вы собираетесь поддерживать и изменять код VB6, вероятно, сейчас стоит выполнить преобразование.

...