Da eine von mir geschriebene Funktion in AutoIt zu langsam ist dachte ich mir ich schreibe sie in C++ speichere sie als DLL und benutze sie dann mit AutoIt.
So da ich ihn C++ noch ein Anfänger bin hab ich mal angefangen und auch die Funktion fertigbekommen.Hab sie als DLL kompiliert mit MinGW und hab versucht sie mit AutoIt aufzurufen aber bekomme immer @error = 3 (Funktion nicht gefunden).
C++ Code :
Code
#include<iostream>
using namespace std;
int in (int,int,int,int,int,int);
int RectCollision (int,int,int,int,int,int,int,int);
int main ()
{
// 10
}
int RectCollision (int x1,int y1,int w1,int h1,int x2,int y2,int w2,int h2)
{
bool returnvar=false; // 15
if (in(x2,y2,x1,y1,w1,h1))
{
returnvar=true;
}
if (in(x2+w2,y2,x1,y1,w1,h1))
{
returnvar=true;
}
if (in(x2,y2+h2,x1,y1,w1,h1))
{
returnvar=true;
}
if (in(x2+w2,y2+h2,x1,y1,w1,h1))
{
returnvar=true;
}
return returnvar;
}
int in (int po1,int po2,int x,int y,int w,int h)
{
bool myreturn=false;
if (po1>x && po1<x+w && po2>y && po2<y+h)
{
myreturn=true;
}
return myreturn;
}
Alles anzeigen
Aufruf in AutoIt :
[autoit]$call = DllCall (DllOpen("physx.dll"),"BOOL","RectCollision","int",100,"int",100,"int",100,"int",100,"int",100,"int",100,"int",100,"int",100)
[/autoit]Warum funktioniert es nicht ?? Cpp falsch kompiliert ? ? Fehler beim Aufruf ? oder Fehler im C++ Code ??
Hoffe ihr könnt mir helfen