为什么我的本地.DLL项目找不到我的.NET .dll?

问题描述:

我跟随由烟雾这里提供的说明:How to call a C# library from Native C++ (using C++\CLI and IJW)为什么我的本地.DLL项目找不到我的.NET .dll?

我也做了一定的.dll文件路径添加到Visual Studio中的原生C++项目的额外使用#using目录。我还将#using添加到包装器.cpp文件中。所有的.cpp文件都启用了cli,并且我已经在C#项目上启用了COM(但我没有使用COM,所以这应该不重要)。

我还将C#.dll添加到C++ .dll的执行路径中。

我仍然在调试时出现System:IO:FileNotFoundException。一切都编译好,所以Visual Studio已经找到了C#.dll,但是我的C++ .dll在运行时没有找到它。

完整例外:

enter image description here

没有人有任何想法,为什么?

编辑:

我想通了。我没有意识到C#.dll需要与载入C++ .dll的应用程序位于同一文件夹中,而不是与C++ .dll位于同一文件夹中。

+0

完全例外究竟是什么? – CodingYoshi

+0

这是:https://imgur.com/a/QNZfS – DustyEngineer

+0

检查bin目录以确保两个DLL已被复制。也不要为AnyCPU编译,使用x64,因为C++不支持AnyCPU。 – MineR

我想通了。我没有意识到C#.dll需要与载入C++ .dll的应用程序位于同一文件夹中,而不是与C++ .dll位于同一文件夹中。