DLLs ??

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
reggid
User
Beiträge: 120
Registriert: Dienstag 8. Oktober 2002, 19:04
Wohnort: Dinslaken
Kontaktdaten:

Hi gibt es eine Möglichkeit dlls in Python zuerstellen? (ja ich weis wie scheiße ihr windows findet, aber machen benutzen es doch noch)


Ps: Gibt es soetwas wie eine selfpython, also eine nachmache von selfhtml oder selfphp ?
hans
User
Beiträge: 728
Registriert: Sonntag 22. September 2002, 08:32
Wohnort: Sauerland
Kontaktdaten:

Hi reggid

kannst du deinen schießwütigen Al Capone nicht mal etwas schrumpfen lassen?

Als mit den DLL's ist das so ne sache, das geht schon ganz schön ans eingemachte. Ich selbst habe ja privat kein windows und auf der Arbeit kein Python sondern nur Delphi :-( Wenn du aus Pythoncode eine .exe machen kannst, dann kannst du wahrscheinlich auch DLL's erstellen.

DLL's haben aber so ihr Eigenleben. In Delphi verlangen die bestimmte Vorraussetzungen, wenn Strings zwischen Applikation und DLL ausgetauscht werden sollen.

Ohne es genau zu wissen denke ich, dass es das nicht gibt, aber ich lasse michgerne überraschen.

Hans
reggid
User
Beiträge: 120
Registriert: Dienstag 8. Oktober 2002, 19:04
Wohnort: Dinslaken
Kontaktdaten:

Nunja mir würde es auch schon reichen, wenn es alles machen könnte wie ein dll und VB damit klarkommt,
hans
User
Beiträge: 728
Registriert: Sonntag 22. September 2002, 08:32
Wohnort: Sauerland
Kontaktdaten:

Gib mal ein kleines Beispiel, was du vorhast. Habe ich das Richtig verstanden, dass VB ein Pythonfunktion aufrufen soll und deren Ergebnis weiterverarbeitet?
reggid
User
Beiträge: 120
Registriert: Dienstag 8. Oktober 2002, 19:04
Wohnort: Dinslaken
Kontaktdaten:

Jo so soll es sein !
also das Projekt www.ai-wars.de ist in VB geschrieben und holt sich die Dlls aus einem Ordner, diese Dlls enthalten, die KI, leider haben wir bis jetzt nur eine Anleitung für VB, wie man seine KI ins Spiel bringt. Da aber VB nicht kostenlos ist und auch nicht jeder VB kann, wollen wir jetzt mehr Sprachen einbringen und der Seite auch einen Englische Übersetzung geben !
hans
User
Beiträge: 728
Registriert: Sonntag 22. September 2002, 08:32
Wohnort: Sauerland
Kontaktdaten:

Du kannst ja mal VB Code zeigen, wo eine Funktion aus einer DLL eingebunden wird. In Delphi geht das so:

Code: Alles auswählen

procedure MachWas
  var
  Handle : THandle;  
  Proc : TFarProc;
  MeineFunktion:TMeineFunktion;  
begin
  Handle := LoadLibrary('c:\pfad\meine.dll');
  proc := getProcAddress(Handle, 'MeineFunktionInDll');
  if proc = nil then raise exception.create('verdammter Fehler');
  @MeineFunktion := proc;
     :
     :
   a := MeineFunktion(b,c,d,e);
     :
     :
     :
end;
Ich hoffe, ich habe keinen Fehler eingebaut. Ich will ja auch keinen entmutigen, aber ich wollte damit mal zeigen, wie (für meine Begriffe) kompliziert der Zugriff ist. Ich kann mir nicht vorstellen, dass Python das richtige sichere Mittel ist, lasse mich aber gerne eines besseren belehren.

Bin jetzt mal auf ein VB Beispiel gespannt.
Hans
x-herbert
User
Beiträge: 59
Registriert: Mittwoch 27. November 2002, 20:52

@reggid

ich bin mir nicht sicher, ob ich Deine Ausführungen richtig verstanden habe: möchtest Du eine dll in Python einbinden oder eine dll erstellen??

- dll erstellen: für Windows gibt es einige Freeprogramme zum Kompilieren z.B. Dev C++ http://www.bloodshed.net/ (siehe auch http://directory.google.com/Top/Compute ... lers/?tc=1)
einfach eine "normale Win-dll" ansprechen ist (glaube ich) nicht möglich, die "mini-dll´s" die ich testweise kompiliert hatte, waren speziell für Python angepasst; Tipp: SWIG

- dll einbinden: [bin hier nicht ganz trittfest] die dll in \python22\dll\ speichern und über "import reggid" die reggid.dll ansprechen

Welche Funktionen in der dll enthalten sind bzw. wie man diese aufruft muss natürlich bekannt sein ;-)

gruss x-herbert
reggid
User
Beiträge: 120
Registriert: Dienstag 8. Oktober 2002, 19:04
Wohnort: Dinslaken
Kontaktdaten:

Hi
Also in VB kann ich das auch nicht mit den dlls, hat wer anderes gemacht :D
Damit es noch mal klar ist, ich will in Python selber eine dll schreiben und Vb soll sie nutzen, aber ich habe noch nichts gefunden, dass afu das erstellen von dlls in Python hinweist :(
x-herbert
User
Beiträge: 59
Registriert: Mittwoch 27. November 2002, 20:52

@reggid

das Stichwort heißt hier "Python in C/C++ nutzen bzw. erweitern" - bei Goggle & Co. nach "python extend c++" suchen....
=> auch hier hilft das Paket "SWIG"

... da geht es aber schon ans Eingemachte, d.h. Du solltest in C/C++ "sicher" programmieren können

=> wenn das nicht der Fall ist, bleibt Dir nur Dein Projekt offen zu legen und zu hoffen, dass sich jemand der "Ahnung" hat sich dafür interessiert - Du kannst Dich ja um "Kaffe, Bier, Pizza" kümmern... :D
gruss x-herbert
hans
User
Beiträge: 728
Registriert: Sonntag 22. September 2002, 08:32
Wohnort: Sauerland
Kontaktdaten:

Wenn's Kaffee gibt, komme ich auch! Aber bitte schwarz und ohne sa(h)ne :D

Hans
reggid
User
Beiträge: 120
Registriert: Dienstag 8. Oktober 2002, 19:04
Wohnort: Dinslaken
Kontaktdaten:

Jo kommt doch am sonntag vobei, es gibt Kaffee und Kuchen !
Mein Großeltern und meine Tante sind auch da !
x-herbert
User
Beiträge: 59
Registriert: Mittwoch 27. November 2002, 20:52

@ reggid

siehe http://www.nightmare.com/software.html => calldll

zum Einbinden von div. dll´s unter Win
gruss x-herbert
Gast

Damit kann ich dlls aufrufen, ist schon mal gut, aber selber noch keine schreiben, Außer wenn ich sie in c++ einbinde.
x-herbert
User
Beiträge: 59
Registriert: Mittwoch 27. November 2002, 20:52

@Gast alias reggid ?

ein Tool, welches Dir das schreiben von dll´s abnimmt wäre schön :lol:

würde dann auch gern ein Dutzend mitbestellen....
gruss x-herbert
Antworten