2017-10-10 91 views
-2

我跟隨由煙霧這裏提供的說明: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

回答

-1

我想通了。我沒有意識到C#.dll需要與載入C++ .dll的應用程序位於同一文件夾中,而不是與C++ .dll位於同一文件夾中。

相關問題