Один клиент хочет использовать наш DLLs.NET от VB6. Они разработаны для поддержки реверса interop, и все хорошо работает... кроме: существует две отдельных программы VB6 в двух различных каталогах. Кажется, что необходимо сделать один из:
Это - наблюдение клиента и также поддерживаемый документацией RegAsm:
После регистрации блока с помощью Regasm.exe можно установить его в глобальном кэше сборок так, чтобы это могло быть активировано от любого COM-клиента. Если блок только будет активированным отдельным приложением, можно поместить его в каталог того приложения.
Я смущен по этому вопросу.
Первая точка беспорядка:
Насколько я понимаю, время выполнения COM определяет местоположение DLL с помощью Прогр идентификатора / идентификатор Класса. Когда я смотрю в реестре на идентификационную запись Класса, я вижу полный путь к DLL.NET в ключе CodeBase. Почему случается так, что программа COM с помощью Прогр идентификатора / идентификатор Класса не определяет местоположение DLL.NET с помощью CodeBase?
Вторая точка беспорядка:
GAC характерен для.NET. Как это вовлечено в разрешение ссылок COM?