我有一个包含非托管 C + + API 代码的 dll 库,我需要在我的。NET 4.0应用程序。但是我尝试加载 dll 的每个方法都会得到一个错误:
无法加载 DLL‘ MyOwn.DLL’: 找不到指定的模块
我已经阅读和尝试了几个解决方案,我在互联网上找到的。没有工作. 。
我尝试过以下方法:
[DllImport("MyOwn.dll", CallingConvention = CallingConvention.Cdecl)]
[return: MarshalAs((UnmanagedType.I4))]
public static extern Int32 MyProIni(string DBname, string DBuser_pass,
string WorkDirectory, ref StringBuilder ErrorMessage);
当我尝试跟随 这篇文章并运行这个示例(从下载的代码)时,它运行没有问题(使用的 dll 位于 bin/debug 文件夹中)
我已经将 dll (以及它所依赖的所有文件)复制到 bin 文件夹中。
我也尝试过这种方法,但得到了同样的错误:
[DllImportAttribute(MyOwnLibDllPath, EntryPoint="TMproIni")]
[return: MarshalAs(UnmanagedType.I4)]
public static extern int MyproIni(string DBname, string DBuser_pass,
string WorkDirectory, ref StringBuilder ErrorMessage);
有什么建议吗?