Как зарегистрировать библиотеки COM во время выполнения?

StackOverflow https://stackoverflow.com/questions/265212

Вопрос

Допустим, я разрабатываю приложение, которое устанавливает COM-компонент, а установщик регистрирует их. Это прекрасно работает.

Теперь программное обеспечение требуется для запуска с карты памяти. Как я могу зарегистрировать мои библиотеки времени выполнения и убедиться, что реестр очищен после запуска приложения?

Это было полезно?

Решение

Вы всегда работаете на XP или новее? Не беспокойся Используйте " регистрацию свободной COM ".

По сути, вы создаете файл манифеста для компонента COM, чтобы загрузчик Windows знал, какая у него регистрация, без необходимости вносить это в реестр.

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

" Шаг 6 " и "Шаг 7" в этой статье показано, как создавать манифесты. Если ваша основная программа является нативной, а не управляемой, вам также может потребоваться выполнить некоторые вызовы API, также объясненные там.

Другие советы

Мы можем использовать команды оболочки, чтобы сделать это. Вызовите Regsvr32 с именем dll, используя Shell.

Однажды я увидел статью о бок о бок COM , что может быть то, что вы хотите. Обратите внимание, что он доступен не во всех версиях Windows.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top