Создайте облако слов, чтобы показать частоты чисел в Python

Похоже, что идеальное решение еще не существует. Чтобы обобщить некоторые исследования:

Make My Manifest ( link )

Этот инструмент сканирует проект VB6 для поиска зависимостей COM, но также поддерживает объявление вручную зависимых COM-зависимостей (т. е. используемых через CreateObject).

Интересно, что этот инструмент помещает всю информацию о зависимостях внутри манифеста приложения. Приложение exe и его зависимости описываются как единая сборка, состоящая из нескольких файлов. Я еще не понял, что это возможно.

Выглядит как очень хороший инструмент, но с версии 0.6.6 он имеет следующие ограничения:

  • только для VB6 приложений, начинается с файла проекта VB6. Позор, потому что многое из того, что он делает, действительно не имеет ничего общего с приложением VB6.
  • , не подходящим для интеграции в процесс сборки. Это не является большой проблемой, если ваши зависимости не сильно меняются.
  • бесплатное ПО без источника, рискованное полагаться на него, потому что оно может стать отказом в любой момент.

Я не тестировал, поддерживает ли он библиотеки .NET com.

regsvr42 ( codeproject link )

Этот инструмент командной строки генерирует файлы манифеста для собственного COM-модуля библиотеки. Он вызывает DllRegisterServer, а затем шпионит за самостоятельной регистрацией, поскольку он добавляет информацию в реестр. Он также может генерировать манифест клиента для приложений.

Эта утилита не поддерживает .NET COM-библиотеки, поскольку они не выставляют подпрограмму DllRegisterServer.

Утилита написана на C ++ , Исходный код доступен.

mt.exe

Часть окна SDK (может быть загружена из MSDN ), которую вы уже имеете, если у вас есть визуальная студия. Здесь зарегистрировано . Вы можете генерировать файлы манифеста для собственных COM-библиотек следующим образом:

mt.exe -tlb:mycomlib.ocx -dll:mycomlib.ocx -out:mycomlib.ocx.manifest

Вы можете создавать файлы манифеста для .NET COM-библиотек следующим образом:

mt.exe -managedassemblyname:netlib.dll -nodependency -out:netlib.dll.manifest

Однако , есть некоторые проблемы с этим инструментом:

  • Первый фрагмент не будет генерировать атрибуты progid, разбивая клиенты, которые используют CreateObject с progids.
  • Второй фрагмент сгенерирует и , которые необходимо удалить до того, как манифесты действительно будут работать.
  • Генерация клиентских манифестов для приложений не поддерживается.

Возможно, будущие версии SDK улучшит этот инструмент, я протестировал его в Windows SDK 6.0a (vista).

1
задан Ralph 7 March 2019 в 21:14
поделиться