Я пытаюсь создать COM-объект автоматизации MFC с помощью библиотеки DLL MFC, но у меня возникают проблемы. Я создал DLL и файл TLB был сгенерирован. Когда я хочу импортировать файл TLB в приложение MFC, Visual Studios сообщает мне
Cannot open source file C:/Users/XXX/documents/visual studio 2015/projects/ComDlgInDll/TestApp/ComDlgInDll.tlh
Я набираю эту команду:
#import "..\Debug\ComDlgInDll.tlb" no_namespace
И даже если я просто набираю
#import
Он просто пойдет прямо по пути и скажет, что не может найти файл TLH.
У меня вообще нет файла TLH, поэтому я не понимаю, почемуЯ не могу импортировать это.
Буду признателен за решение, так как я новичок в MFC и COM.
Я также хотел бы упомянуть, что при создании приложения C # для Windows Forms я добавляю DLL в качестве ссылки COM, а затем набираю:
ComDlgInDll.ComDialogFactory var = new ComDlgInDll.ComDialogFactory();
var.GetDialog();
Я получаю эту ошибку:
Retrieving the COM class factory for component with CLSID {1B2F7173-E140-47F3-8921-860BD434B05E} failed due to the following error: 80040154 Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)).
Я даже зашел в реестр, чтобы найти этот uuid, и не смог его найти, что странно. Я не уверен, почему тот uuid, который связан с коклассом, не регистрируется.
Буду признателен за любую помощь, поскольку я уже давно занимаюсь этим.