vb6 xcopy развертывание - PullRequest
4 голосов
/ 07 ноября 2008

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

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

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

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

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

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

Ответы [ 4 ]

4 голосов
/ 13 ноября 2008

Для создания файлов манифеста вы можете попробовать сделать 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.

1 голос
/ 25 ноября 2008

В этой статье описан отличный обзор того, что делать в MSDN: Активация COM-компонентов без регистрации: пошаговое руководство .

0 голосов
/ 18 марта 2009

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

РЕДАКТИРОВАТЬ Веб-сайт MMM не работает. Я вижу здесь , что у автора были проблемы с их хостингом, и он предоставил другое место для получения Make My Manifest - скачайте его здесь

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

0 голосов
/ 13 ноября 2008

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

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

...