Могу ли я использовать более новые версии Visual Studio для "старых" вещей?

У меня есть несколько библиотек DLL на базе ATL/COM, на которых я использую Visual C++ 6.0. Мне требуется пара "старых" вещей из сгенерированных DLL:

(1) Они должны быть совместимы с проектами, разработанными в Visual Basic 6.0 (старый VB6, категорически не VB.Net).

(2) Они должны быть совместимы со старыми операционными системами - минимум Windows 98 SE. Чтобы было ясно, я имею в виду, что они должны работать на таких ОС, а не то, что мне нужно было бы разрабатывать их на машине с такой ОС.

Я устал от Visual Studio 6.0. О переходе на Dot Net (или любом другом существенном изменении, подобном этому) в настоящее время не может быть и речи, поэтому я должен продолжать использовать VB6. Но могу ли я переключиться на более новый C++ Visual Studio, с минимальными усилиями (то есть, если нужно, если потребуется какое-либо перекодирование)?

Если так, есть ли какие-то "ошибки", которых я должен остерегаться?

Благодарю.

2 ответа

Различные версии VS.Net могут в какой-то степени открывать старые проекты.Net, но ни одна из них не может открыть что-либо до.Net, которое включает 6.0 любого языка.

Вы должны быть в состоянии создать новый проект C++ в одном из приложений.Net VS и перестроить там свой проект C++, и он должен работать, потому что неуправляемый код C++ не требует времени выполнения.Net (и он все еще компилируется в собственный машинный код).), но я давно не делал много C++, поэтому я не уверен на 100%, что он будет работать.

Да, но это слегка больно. Вот почему большинство магазинов придерживаются VC6. Я признаю, что не проверял библиотеки DLL COM в Windows 98, но еще в NT 4.0 с Visual Studio 2005.

Я хотел бы подчеркнуть, что здесь нет минимальных усилий. В зависимости от того, как написан ваш код, преобразование может быть довольно болезненным. В одном проекте поиск и замена исправили 9 из 10 проблем. YMMV. Возможно, вам придется переписать некоторые из низкоуровневых COM-соединений.

Другие вопросы по тегам