Debugging 将tlb文件导入我的MFC应用程序时出现问题

Debugging 将tlb文件导入我的MFC应用程序时出现问题,debugging,import,mfc,com,Debugging,Import,Mfc,Com,我正在尝试使用MFC库DLL创建MFC自动化COM对象,但遇到问题。我已经创建了DLL并生成了TLB文件。当我想将TLB文件导入MFC应用程序时,Visual Studio会告诉我 Cannot open source file C:/Users/XXX/documents/visual studio 2015/projects/ComDlgInDll/TestApp/ComDlgInDll.tlh 这是我键入的命令: #import "..\Debug\ComDlgInDll.tlb" no

我正在尝试使用MFC库DLL创建MFC自动化COM对象,但遇到问题。我已经创建了DLL并生成了TLB文件。当我想将TLB文件导入MFC应用程序时,Visual Studio会告诉我

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窗体应用程序时,我将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,但我找不到它,这很奇怪。我不知道为什么与coclass关联的uuid没有被注册


我将非常感谢任何帮助,因为我已经处理这个问题很长一段时间了

你能试着导入dll文件吗#导入“.\Debug\ComDlgInDll.dll”您可以尝试导入dll文件吗#导入“.\Debug\ComDlgInDll.dll”