2010-03-31 2 views
4

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

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

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

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

Если да, то есть ли какие-либо «gotchas», за которыми я должен следить?

Спасибо.

ответ

2

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

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

+0

Руководство VC++ противоречит вам. Вы можете обновлять проекты, возвращаясь к C++ 4.0 в последней Visual Studio. http://msdn.microsoft.com/en-us/library/kyb7zzw4(v=VS.80).aspx – MarkJ

+0

Это не противоречит ничто, что я сказал. Он просто подтверждает и расширяет его. –

+0

Э? Разве вы не сказали, что «никто из них не может открыть что-либо pre-.Net, в которое входит 6.0 любого языка»? Но они могут, они могут вернуться к 4.0. – MarkJ

0

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

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

 Смежные вопросы

  • Нет связанных вопросов^_^