.NET程序集DLL缺少依赖项

时间:2012-03-05 14:19:49

标签: .net c++-cli assemblies

我正在为C ++类创建一个C ++ / CLI包装器,但是通过构建我的C ++ / CLI项目创建的DLL无法在C#中加载,Assembly.Load会抛出一个fileNotFound异常,并显示消息“无法加载文件或程序集“CLIExport.dll”或其依赖项之一。系统找不到指定的文件。“

C ++ / CLI项目仅包含包装类,C ++类和C ++类所依赖的一个头文件,源文件和头文件已添加到解决方案中,未添加任何引用。我是否需要在C ++ / CLI项目中添加对C ++类的引用?我不知道C#app认为程序集缺失了什么,我不知道我需要添加引用,C ++ / CLI项目是否需要引用它所使用的每个.net类型系统命名空间?

感谢。

1 个答案:

答案 0 :(得分:1)

我认为问题在于您尝试在64位解决方案中使用非托管x86 dll。

尝试操作:右键单击解决方案,然后点击Configuration manager,将所有项目设置为x86,然后再次尝试构建。

我很确定您的构建配置不一致,因此出现错误消息(我遇到了同样的问题几次......)

您可以在此处阅读:What does the Visual Studio "Any CPU" target mean?

快速概述VS中的不同目标:http://visualstudiohacks.com/articles/visual-studio-net-platform-target-explained/