Bonjour, je cherche a wrapper une fonction que j'ai faire dans un DLL écrite en C++, donc non managé.
Mais ca me lève une execption comme quoi le point d'enté de la fonction SetMousePosition est introuvable. Et je ne trouve pas ou est mon erreur.
voici le code de la fonction:
Je wrappe la dll comme ceci:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 bool SetMousePosition(LPARAM lparam, int & x, int & y) { MOUSEHOOKSTRUCT * pMouseStruct = (MOUSEHOOKSTRUCT *)lparam; if (pMouseStruct == NULL) { return false; } pMouseStruct->pt.x = x; pMouseStruct->pt.y = y; return true; }
Et j'apelle la dll comme ceci dans mon code c#:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 [DllImport("fonct.dll", EntryPoint="SetMousePosition", SetLastError=true, CharSet=CharSet.Unicode, ExactSpelling=true, CallingConvention=CallingConvention.StdCall)] private static extern bool InternalSetMousePosition(IntPtr lparam, ref int x, ref int y);
Merci de votre aide.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 SetMousePosition(_lparam, ref x, ref y);
Partager