Фатальная ошибка C1804. не могу прочитать файл библиотеки типов

У меня есть проект C ++, который импортирует два файла .tlbs в заголовочный файл.

#import "..\bin\derived.tlb" named_guids raw_interfaces_only
#import "..\bin\base.tlb"  named_guids raw_interfaces_only

Сейчас derived.tlb зависит от base.tlb. Есть базовые классы в base.tlb что занятия в derived.tlb основаны на.

Когда я компилирую, я получаю

msgstr «фатальная ошибка c1084: невозможно прочитать файл библиотеки типов ‘.. \ производный.tlb’: ошибка загрузки библиотеки типов / DLL.»

Теперь жалуется на derived.tlb но проблема, по-видимому, заключается в том, что невозможно найти base.tlb,

base.tlb исходит от C# Com interop проект. Если я проверю «зарегистрироваться для взаимодействия» на вкладке сборки проекта c #, эта проблема исчезнет в проекте c ++. Но я не хочу регистрировать это. Он создается на сборочной машине, на которой ничего не должно быть зарегистрировано. Итак, я создаю .tlb с шагом пост сборки tlbexport,

tlb создается в правильной папке, но кажется, что без регистрации, #import не могу найти base.tlb при импорте derived.tlb,

Я вижу в процессе монитора, он пытается чертовски много мест, чтобы найти base.tlb но не та папка, которая соответствует ..\bin\,

Что я могу сделать, чтобы найти его в нужном месте? Добавление записи для этого в «Дополнительные каталоги включения» в проекте c ++, похоже, не помогает.

2

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]