Tôi có thư viện dll với mã API C ++ không được quản lý mà tôi cần sử dụng trong ứng dụng .NET 4.0 của mình. Nhưng mọi phương pháp tôi cố gắng tải dll của mình đều gặp lỗi:
Không thể tải DLL 'MyOwn.dll': Không thể tìm thấy mô-đun được chỉ định. (Ngoại lệ từ HRESULT: 0x8007007E)
Tôi đã đọc và thử các giải pháp tôi đã tìm thấy trên internet. Không có gì hoạt động ..
Tôi đã thử sử dụng các phương pháp sau:
[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);
Khi tôi thử làm theo bài viết này và khi tôi chạy ví dụ này (từ mã đã tải xuống), nó chạy mà không có vấn đề gì (dll được sử dụng nằm trong thư mục bin / debug)
Tôi đã sao chép dll của mình (cùng với tất cả các tệp mà nó phụ thuộc vào thư mục bin của tôi).
Tôi cũng đã thử phương pháp này nhưng gặp lỗi tương tự:
[DllImportAttribute(MyOwnLibDllPath, EntryPoint="TMproIni")]
[return: MarshalAs(UnmanagedType.I4)]
public static extern int MyproIni(string DBname, string DBuser_pass,
string WorkDirectory, ref StringBuilder ErrorMessage);
Bất kỳ đề xuất?