Я пытаюсь создать dll ManagedWrapper, который можно вызывать из приложения MFC, которое не будет компилироваться с использованием ключа / clr.В заголовке моего тестового MFC я объявил следующее:
#import "ManagedProxy.tlb"
using namespace ManagedProxy;
Когда я пытаюсь скомпилировать тестовое приложение MFC, я получаю ошибку C2871: «ManagedProxy»: пространство имен с этим именем не существует,Я уверен, что это сработало совсем недавно.Если я укажу неправильное имя файла tlb, я получу ошибку компиляции C1083, которая указывает мне, что файл tlb загружается правильно.
Почему Visual Studio теперь жалуется и почему он работал раньше?
Добавление:
Я только что узнал, что мой прокси перестал работать после того, как я изменил пространство имен на ManagedProxy.Я перекомпилировал управляемый проект, и у собственного приложения в качестве дополнительного пути включения есть папка Debug управляемого проекта, поэтому она должна ссылаться на последний файл tlb, но это не так.Я безуспешно пробовал абсолютный путь к проекту tlb, очищенному и перестроенному.
Почему tlb не является изменением пространства имен?
Добавление Использовал Object Browser, чтобы увидеть, что находится в TLB, а пространство имен ManagedProxy каким-то образом переименовано во что-то другое.Мне также не хватает пары интерфейсов, хотя они помечены как ComVisible (true).
Кто-нибудь, пожалуйста, помогите ....
TIA.