Bonjour,
J'ai rencontré un problème sur quelque chose que je sais pas faire en framework 3.5 d'habitude : exporter mes fonctions c++ via DllImport. Cette fois ci j'ai fait un projet en framework 4 et j'ai eu le droit à une exception du type : la signature de la fonction n'est pas la même en code managé et en code non managé. J'ai mis du temps à cherche l'erreur en vain, puis que j'ai passé mon projet en 3.5 et là magie ça marche !
Voici un exemple:
C++/Qt : Quand j'appelle une fonction sans paramètre ça marche bien, si là je rajoute un paramètre même en int ça foire :
C#
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 extern "C" VISUVIDEOENGINE_EXPORT VisuVideoEngine *VisuVideoEngine_TEST(int c) { VisuVideoEngine *instance = new VisuVideoEngine(QString(""), QString("")); return instance; }
Est-ce que quelqu'un saurait pourquoi ça ne fonctionne plus en 4 ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 [DllImport("VisuVideoEngine.dll")] public static extern IntPtr VisuVideoEngine_TEST( int a);
Partager