VS2005可以';即使在Regasm之后也找不到.NET DLL类定义 我有一个使用第三方.NET DLL的非托管C++项目。它可以在一台机器上构建,但不能在另一台机器上构建——IDE找不到类定义

VS2005可以';即使在Regasm之后也找不到.NET DLL类定义 我有一个使用第三方.NET DLL的非托管C++项目。它可以在一台机器上构建,但不能在另一台机器上构建——IDE找不到类定义,.net,c++,visual-studio-2005,.net,C++,Visual Studio 2005,我运行了RegAsm.exe TheLib.dll/codebase/tlb:TheLib.tlb,两台机器上的注册表项匹配。也就是说,即使IDE说lib.Function()未定义,它也在两台机器的注册表中 我可能做错了什么?(这两台计算机上的源代码已从同一存储库中签出,并且没有未提交或未版本化的文件。)如果您没有正确地从库中导出类或函数,有时会发生这种情况。即使代码在那里,并且在链接时编译得很好,但它可能会忽略定义,或者实际上不会生成到函数的导出。因此,其他导入lib的项目将它们显示为未定义

我运行了RegAsm.exe TheLib.dll/codebase/tlb:TheLib.tlb,两台机器上的注册表项匹配。也就是说,即使IDE说lib.Function()未定义,它也在两台机器的注册表中


我可能做错了什么?(这两台计算机上的源代码已从同一存储库中签出,并且没有未提交或未版本化的文件。)

如果您没有正确地从库中导出类或函数,有时会发生这种情况。即使代码在那里,并且在链接时编译得很好,但它可能会忽略定义,或者实际上不会生成到函数的导出。因此,其他导入lib的项目将它们显示为未定义


介绍了一种从DLL导出类的好方法,值得一读,因为它可能与您的问题有关。

谢谢您的回答。我已经停用了那台机器(出于无关的原因),所以我不知道这是否能解决问题。不管怎样,还是给+1:)