无法将托管.dll添加到c#项目中

Cannot add a managed .dll into a C# project

本文关键字:项目 添加 dll      更新时间:2023-10-16

我有一个c++库,为了在c#解决方案中使用,我创建了一个CLR项目(管理)。所以,我把托管的。dll包含在我想要的c#项目中。智能感知可以看到它,我可以从该库访问类,但是当我编译代码"类型或命名空间名称"XXXX"无法找到(你是否缺少using指令或程序集引用?)。我试图清理和重建项目,重新启动Visual Studio(2013),删除它并再次添加参考等,但没有成功。

谢谢!

找到问题了!托管代码似乎是在4.5框架上构建的,而我想要引入。dll的项目是在4.0框架上。

try this:

右键单击项目引用中的DLL

选择属性

设置"embed interop types"为false

如果您的托管桥调用一些非托管代码,您将需要确保本机(非托管)库被Visual Studio复制到正确的子目录中。IDE将按照预期复制托管桥代码(即到Release或Debug或任何子目录中),但它对桥代码和非托管代码之间的链接了解不够,也无法将非托管库复制到正确的位置。