Ho una libreria di DLL con codice API C++ non gestito che è necessario utilizzare nell'applicazione .NET 4.0. Ma ogni metodo provo a caricare la mia dll ho un errore:Impossibile caricare DLL (Impossibile trovare il modulo HRESULT: 0x8007007E)
Unable to load DLL 'MyOwn.dll': The specified module could not be found. (Exception from HRESULT: 0x8007007E)
Ho letto e cercato soluzioni Severa ho trovato su internet. Niente funziona ..
Ho provato con metodi seguenti:
[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);
Quando ho provato dopo this article e quando ho eseguito questo esempio (dal codice scaricato) Viene eseguito senza un problema (la dll utilizzato è in la cartella bin/debug)
Ho copiato la mia DLL (insieme a tutti i file da cui dipende nella cartella bin).
Ho anche provato questo approccio, ma ho ottenuto lo stesso errore:
[DllImportAttribute(MyOwnLibDllPath, EntryPoint="TMproIni")]
[return: MarshalAs(UnmanagedType.I4)]
public static extern int MyproIni(string DBname, string DBuser_pass,
string WorkDirectory, ref StringBuilder ErrorMessage);
Qualche suggerimento?
è va bene avere tutte le dipendenze nella cartella System32 e la mia DLL da qualche altra parte? –