2008-11-06 2 views
4

Может ли кто-нибудь сказать мне, как конвертировать устаревшее приложение, которое является vb6 (COM-dll ocx и exes) для использования Regfree COM.vb6 xcopy deployment

Я попытался открыть DLL-файлы в визуальной студии и создал файл манифеста, но некоторые из DLL-сообщений дают ошибку.

Есть ли какие-либо инструменты, которые помогут мне сделать этот процесс?

Я попробовал инструмент из codeproject, который называется regsvr42, который не создает манифест полностью.

Я использовал инструменты, такие как PE explorer, где я получаю всю информацию о typelib, но преобразовать их в файлы манифеста слишком сложно.

Мы начали переносить это на .NET, в течение нескольких месяцев мы должны его развернуть, это будет проще, если это развертывание на основе xcopy.

ответ

4

Чтобы создать файлы манифеста, вы можете попробовать использовать Make My Manifest от http://mmm4vb6.atom5.com/.

EDIT Сайт MMM опущен. Я вижу here, что у автора возникли проблемы с их хостингом и предоставил другое место, чтобы получить Make My Manifest - download it here.

Если вы можете контролировать создание объектов, которые можно использовать DirectCOM из http://www.thecommon.net/10.html

Имейте в виду, что если один из используемых библиотек DLL или OCXs создает другие COM-объекты динамически CREATEOBJECT вызовов, что ссылка не будет храниться в ВБП файл проекта, и вы не получите полный файл манифеста. Вероятно, вам придется поймать создание объекта во время работы приложения. Приложение Depends.exe может профилировать запущенное приложение и сообщать обо всех используемых DLL. Я не знаю, есть ли инструмент, который может найти дополнительную информацию, связанную с COM.

0

Make My Manifest может сочетать позднее связывание, а также раннее связывание. Вам просто нужно добавить ссылки на зависимостей поздней привязки вручную, по расположению файлов или по ProgId.

Дополнительную информацию об использовании утилиты вы можете найти на странице http://mmm4vb6.atom5.com/mmm-demo-1248.html.

0

MakeMyManifest хорошо известен как автоматический инструмент для создания манифестов для проектов VB6, сам не пробовал. DirectCOM также имеет поклонников, я еще не пробовал.

EDIT Сайт MMM опущен. Я вижу here, что у автора возникли проблемы с их хостингом и предоставил другое место, чтобы получить Make My Manifest - download it here.

Существует полуавтоматическая техника. Вы можете создавать манифесты с помощью Visual Studio 2008 (вы можете использовать бесплатную версию, такую ​​как Visual Basic Express Edition). Затем сделайте пару изменений вручную, чтобы сделать манифесты подходящими для использования с VB6. См. this section этой статьи MSDN для пошаговых инструкций - проигнорируйте остальную часть статьи, касающуюся ClickOnce.