das Thema kommt ja so oder ähnlich hier schon häufiger vor. Aber ich habe immer noch Probleme, eine dll richtig einzubinden.
Ich möchte (in Blender) mit ctypes ein C++ Code in Python einbinden, um bestimmte Berechnungen zu beschleunigen. Von C++ habe ich allerdings noch keinen blassen Schimmer, versuche mir das aber auf diesem Weg zu erarbeiten.
Ich nutze Win7, Visual Studio Express und Python 3.2 - alle in, auf oder für 64bit
Zum Erstellen der dll habe ich das Tutorial von MS genommen: http://msdn.microsoft.com/de-de/library ... 80%29.aspx
Wenn ich das richtig verstanden habe, müsste ich die Funktionen der dll in Python so einbinden können:
Code: Alles auswählen
import ctypes
path = "C:/Users/.../Release/probe4"
testlib = ctypes.CDLL(path)
x = testlib.Add(2,4)
print(x)
Irgendwo habe ich dann mit Googles Hilfe die folgende Zeile gefunden:
Code: Alles auswählen
#pragma comment(linker, "/EXPORT:MyFuncAdd=?Add@MyMathFuncs@MathFuncs@@SANNN@Z")
Mit dem "DLL Export Viewer" habe ich mir die Namen meiner Funktionen ausgeben lassen. Im Falle der originalen Add Funktion sieht die dann so aus:
public: static double __cdecl MathFuncs::MyMathFuncs::Add(double,double)
Da weiss ich nicht, wie ich das ansprechen soll.
#pragma ... erzeugt mir immerhin den Eintrag "MyFuncAdd", der ja dann auch funktioniert, allerdings nicht 6 zurückgibt, sondern 2225864.
Kann mir da jemand weiterhelfen? Alles googeln bringt grad nichts mehr.
Vielen Dank,
ponc