Как зарегистрировать библиотеки COM во время выполнения?
-
06-07-2019 - |
Вопрос
Допустим, я разрабатываю приложение, которое устанавливает COM-компонент, а установщик регистрирует их. Это прекрасно работает.
Теперь программное обеспечение требуется для запуска с карты памяти. Как я могу зарегистрировать мои библиотеки времени выполнения и убедиться, что реестр очищен после запуска приложения?
Решение
Вы всегда работаете на XP или новее? Не беспокойся Используйте " регистрацию свободной COM ".
По сути, вы создаете файл манифеста для компонента COM, чтобы загрузчик Windows знал, какая у него регистрация, без необходимости вносить это в реестр.
Краткое описание того, что нужно сделать, находится в этой статье на MSDN: Активация COM-компонентов без регистрации: пошаговое руководство
" Шаг 6 " и "Шаг 7" в этой статье показано, как создавать манифесты. Если ваша основная программа является нативной, а не управляемой, вам также может потребоваться выполнить некоторые вызовы API, также объясненные там.
Другие советы
Мы можем использовать команды оболочки, чтобы сделать это. Вызовите Regsvr32 с именем dll, используя Shell. Р>
Однажды я увидел статью о бок о бок COM , что может быть то, что вы хотите. Обратите внимание, что он доступен не во всех версиях Windows.