Visual studio 2010 visual studio 2010未在64位操作系统上引用64位COM 编译了一个64位C++ COM DLL,并成功注册到注册表。 现在,我试图从一个C项目中引用这个DLL,但是当我添加DLL时,VisualStudio说这个DLL不是COM,也不是程序集

Visual studio 2010 visual studio 2010未在64位操作系统上引用64位COM 编译了一个64位C++ COM DLL,并成功注册到注册表。 现在,我试图从一个C项目中引用这个DLL,但是当我添加DLL时,VisualStudio说这个DLL不是COM,也不是程序集,visual-studio-2010,com,reference,32bit-64bit,Visual Studio 2010,Com,Reference,32bit 64bit,如何将此DLL添加为引用???我必须添加,如果我将DLL编译为32位,则可以引用32位DLL。我相信这是因为VS是32位的,所以我相信它看不到64位的COM注册。如果我不能引用64位DLL,听起来很不可思议,这是一个基本功能,因此我认为我遗漏了一些东西。如果可以,它只对作为资源嵌入DLL中的类型库感兴趣。解决方法是直接从DLL生成目录中选择.tlb,或手动运行Tlbimp.exe。@HansPassant,请将您的评论作为答案写下来,以便我将其标记为答案。这似乎是唯一不将COM DLL编译为32

如何将此DLL添加为引用???

我必须添加,如果我将DLL编译为32位,则可以引用32位DLL。我相信这是因为VS是32位的,所以我相信它看不到64位的COM注册。如果我不能引用64位DLL,听起来很不可思议,这是一个基本功能,因此我认为我遗漏了一些东西。如果可以,它只对作为资源嵌入DLL中的类型库感兴趣。解决方法是直接从DLL生成目录中选择.tlb,或手动运行Tlbimp.exe。@HansPassant,请将您的评论作为答案写下来,以便我将其标记为答案。这似乎是唯一不将COM DLL编译为32位的方法。