DLL erstellen

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
mulitreiber
User
Beiträge: 3
Registriert: Donnerstag 1. März 2007, 09:27
Wohnort: Landshut

Hallo,

ich möchte eine DLL erstellen die später mal von einem in C# geschriebenem Programm eingebunden werden soll.
Bisher probiert habe ich py2exe und pyInstaller, mit py2exe habe ich es gar nicht geschafft eine dll zu erstellen, pyInstaller erzeugt COM-DLL´s die soweit ich weiß nicht ohne größeren Aufwand in C# einzubinden sind.
Kennt jemand ein Tool das eine "normale" Windows DLL erstellen kann?
Anderer Ansatz, könnte man das vielleicht mit IronPython lösen? Ich habe leider kein Visual Studio zur Verfügung, kann MonoDev DLL´s erstellen?

Ach ja, im Forum habe ich nur zwei uralt Diskussionen gefunden, die leider im Sande verlaufen sind...

Ciao, Chris
Benutzeravatar
HWK
User
Beiträge: 1295
Registriert: Mittwoch 7. Juni 2006, 20:44

Wenn Du deine DLL mit Python erstellen willst, dürfte das schwierig sein, da Python sich nicht in Maschinencode, sondern nur in Bytecode kompilieren lässt. Die einzige Möglichkeit wäre meines Erachtens, in einem C/C++-Programm auf den Python-Interpreter zuzugreifen. Dies dürfte aber nicht ganz so einfach sein. Vgl. dazu die Python/C-Api unter Embedding Python in der Python-Dokumentation.
MfG
HWK
mulitreiber
User
Beiträge: 3
Registriert: Donnerstag 1. März 2007, 09:27
Wohnort: Landshut

Hm... aber wenn ich den Python Code im C/C++ Code einbette, wird doch mit Py_Initialize() der Interpreter aufgerufen. Also wird wohl beim erstellen der Dll nicht in die selbige miteingepackt, oder? Ziel wäre halt das die Dll am Ende alles selbst mitbringt was sie braucht...
Daher mein Ansatz mit dem PyInstaller, der ja mit der Option --onefile den Interpreter mit in die Dll packen kann. Ich dachte halt eine Dll würde sich von einer Exe nicht besonders stark unterscheinden.

Ciao, Chris
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Hallo Multitreiber,
mulitreiber hat geschrieben:Kennt jemand ein Tool das eine "normale" Windows DLL erstellen kann?
Anderer Ansatz, könnte man das vielleicht mit IronPython lösen? Ich habe leider kein Visual Studio zur Verfügung, kann MonoDev DLL´s erstellen?
DLLs erstellen können weder Visual Studio noch MonoDevelop - das sind nur IDEs. Wenn dann tut das das .NET-Framework und Mono.

Und ja, du kannst in C# PYthon-Code über IronPython nutzen, steht zumindest hier.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
mulitreiber
User
Beiträge: 3
Registriert: Donnerstag 1. März 2007, 09:27
Wohnort: Landshut

Naja, so ganz die ideale Lösung ist das nicht, aber anders gehts wohl nicht.
Vielen Dank für eure Mühe!

Ciao, Chris
Benutzeravatar
veers
User
Beiträge: 1219
Registriert: Mittwoch 28. Februar 2007, 20:01
Wohnort: Zürich (CH)
Kontaktdaten:

Hm wie wärs mit IronPython? Sowas wie Jython nur auf .NET.
Antworten