System.DllNotFoundException in .NET DLL
System.DllNotFoundException in .NET DLL
我采用了用C/C 编写的程序,并修改了接受某些参数为输入并返回变量作为输出并创建Win32 DLL的主要功能。然后,我创建了一个.NET DLL,该DLL使用Interop访问第一个DLL。现在,当我将.NET DLL加载到我的C#应用中时,我会从DLL中获得一个System.dllNotFoundException,这确实使我感到困惑,因为该程序从来没有记忆问题,并且两个Win32/.NET DLL都位于同一目录中(分开通过修改主函数,代码尚未真正更改)。该线程中提供了解决方案,这是我最初的问题。我很确定答案是正确的,但我只是缺少一些东西。
您可以在此处下载我的VS解决方案。该解决方案包含三个项目:WIN32 DLL,.NET DLL和一个引用.NET DLL的Winform应用程序(但是尝试测试时会提供DLL异常)。任何帮助或调试指导将不胜感激。
- 更新:我尝试了下面的所有提示/建议,但我仍然遇到完全相同的错误。如果使事情变得更容易,则可以在上面的超链接中下载我的VS解决方案。
确保已将Win32 DLL放在/Windows/System32文件夹上(如果仅传递DLL名称到Dllimport)
另外,您也可以将DLL的完整路径传递到dllimport属性。
使用依赖性步行者等工具来确保您不会在任何依赖的组件上错过。
相关文章:
- 在 C++/CLI 中将 .NET 事件从一个 DLL 引发到另一个 DLL
- 如何在 64 位 vb.net Windows 应用程序中引用 32 位 dll
- 加载与引用 .NET DLL 位于同一文件夹中的引用的 .NET DLL 时"Not found"异常
- 是否可以在Linux上使用.Net Core 3.1创建C++/CLI代码的C#DLL
- C++ DLL(不是 CLI)是否可以调用 .NET Core 3.0 委托?
- 如何将 VB.Net 字符串作为字符*传递给C++dll?
- VB.NET DLL中的C++DLL函数复制
- .NET核心应用程序无法加载C++DLL
- 如何使函数返回数组?用于制作在VB.NET中使用的DLL
- 是否可以编译使用 .NET DLL 和 GCC 的C++?
- 列出 C# 中的 non-.NET DLL 函数
- 必须使用C DLL调用C#.NET方法
- C++ DLL 包装器 vb.net 传递字节数组的字节数组?
- .NET CORE 2 DLL引用带有C 代码运行时错误
- 内存损坏从vb.net调用c dll
- 如何为64位应用程序注册.NET DLL
- 调用从.NET Core中的C++项目构建的.dll时出现BadImageFormatException
- Clr dll .net control
- 如何在Windows formc++中添加本地c++ dll.. NET项目
- 从ASP调用后端.net dll.. NET Web api