развертывание vb6 xcopy
-
06-07-2019 - |
Вопрос
Кто-нибудь может сказать мне, как преобразовать устаревшее приложение, которое является vb6 (ocx и exes COM dll), для использования Regfree COM.
Я попытался открыть библиотеки DLL в Visual Studio и создал файл манифеста, но некоторые из библиотек DLL выдают ошибку.
Есть ли какие-нибудь инструменты, которые помогут мне выполнить этот процесс?
Я попробовал инструмент из codeproject, который называется regsvr42, который не создает манифест полностью.
Я использовал такие инструменты, как PE explorer , где я получаю всю информацию о typelib , но преобразовать их в файлы манифеста слишком сложно.
Мы начали переносить это на .NET, в течение нескольких месяцев мы должны его развернуть, будет проще, если это развертывание на основе xcopy.
Решение
Для создания файлов манифеста вы можете попытаться использовать Make My Manifest с http://mmm4vb6.atom5.com/ а>. р>
РЕДАКТИРОВАТЬ Веб-сайт MMM не работает. здесь я вижу , что у автора возникли проблемы с их хостингом и предоставил другое место для получения Make My Manifest - загрузите его здесь . Р>
Если вы можете контролировать создание объектов, вы можете использовать DirectCOM с http://www.thecommon.net /10.html Помните, что если одна из используемых библиотек DLL или OCX динамически создает другие COM-объекты с помощью вызовов CreateObject, эта ссылка не будет сохранена в файле проекта vbp, и вы не получите файл полного манифеста. Возможно, вам придется ловить создания объектов во время работы приложения. Приложение Depends.exe может профилировать запущенное приложение и сообщать обо всех используемых библиотеках. Я не знаю, есть ли инструмент, который может найти дополнительную информацию, связанную с COM. Р>
Другие советы
В этой статье описан отличный обзор того, что делать в MSDN: Активация COM-компонентов без регистрации. Р>
Make My Manifest может вместить как позднюю, так и раннюю привязку. Вам просто нужно добавить ссылки на зависимости с поздним связыванием вручную, по расположению файла или по ProgId.
Вы можете посмотреть на http://mmm4vb6.atom5.com/mmm-demo -1248.html для получения дополнительной помощи по использованию утилиты.
Сделай сам Манифест о нем хорошо говорят как об автоматическом инструменте для создания манифестов для проектов VB6, сам не пробовал.DirectCOM ( ДиректКОМ ) у него тоже есть поклонники, опять же, я его не пробовал.
Редактировать Веб-сайт МММ не работает.Я вижу здесь что у автора возникли проблемы с их хостингом и он предоставил другое место для получения Make My Manifest - скачать его можно здесь.
Существует полуавтоматическая техника.Вы можете создавать манифесты с помощью Visual Studio 2008 (вы можете использовать бесплатную версию, такую как Visual Basic Express Edition).Затем внесите пару правок вручную, чтобы сделать манифесты пригодными для использования из VB6.Видишь этот раздел пошаговые инструкции приведены в этой статье MSDN - игнорируйте остальную часть статьи, которая посвящена ClickOnce.