La ligne suivante génère une erreur d'exécution dans une interface graphique C#:Appeler un C++ .dll de C# génère une erreur d'exécution
int x = myclass.number_from_dll();
J'utilise Microsoft Visual Studio 2008.
Le code C# est:
class myclass
{
[DllImport("strat_gr_dll.dll", EntryPoint = "number_from_dll")]
public static extern int number_from_dll();
}
le code dans le .dll C est de:
// This is an example of an exported function.
DLL int number_from_dll(void)
{
return 42;
}
L'erreur d'exécution de .NET est:
An attempt was made to load a program with an incorrect format.
(Exception from HRESULT: 0x8007000B)
Exportez-vous cette fonction avec un nom convivial? –