小编Ing*_*son的帖子

无法加载DLL(无法找到模块HRESULT:0x8007007E)

我有我需要在我的.NET 4.0应用程序中使用的非托管C++ API代码的DLL库.但我尝试加载我的DLL的每个方法都会出错:

无法加载DLL"MyOwn.dll":找不到指定的模块.(来自HRESULT的异常:0x8007007E)

我已阅读并尝试了我在互联网上找到的severa解决方案.什么都行不通..

我尝试过使用以下方法:

[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);
Run Code Online (Sandbox Code Playgroud)

当我尝试按照这篇文章和我运行这个例子时(从下载的代码中)它运行没有问题(使用的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);
Run Code Online (Sandbox Code Playgroud)

有什么建议?

c# c++ dll pinvoke

105
推荐指数
7
解决办法
31万
查看次数

标签 统计

c# ×1

c++ ×1

dll ×1

pinvoke ×1