AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Dynamisch .pas Dateien usen/laden

Ein Thema von Berlinermauer · begonnen am 18. Jun 2009 · letzter Beitrag vom 18. Jun 2009
Antwort Antwort
Berlinermauer

Registriert seit: 3. Okt 2007
Ort: 0x0000
213 Beiträge
 
Delphi 7 Personal
 
#1

Dynamisch .pas Dateien usen/laden

  Alt 18. Jun 2009, 21:04
Hi,

und zwar ich habe vor im Grunde wie eine DLL die pas zu laden, und diese hatt dann ne Klasse mit Funktionen.

Einfacher wäre es ja mit ner DLL aber da hab ich das folgende Problem :

1. HauptProgramm -> läd DLL ClassXXX.dll
2. ClassXXX.dll -> läd Classes.dll
3. ClassXXX.dll -> Anfrage an Classes.dll
4. Classes.dll -> Weiterleiten an HauptProgramm
5. HauptProgram -> Ereignis an die ClassXXX.dll

ich hoffe ihr habt verstanden was ich meine.
Mein Problem ist das 4te, wie ich von ner dll aus ClassenMethoden aufrufe, ohne zB Sockets zu nutzen.

D.H. meine dll muss irgendwie meine Pascal Routinen (zb Memo1.Log.Lines.Add) aufrufen.
Marc S.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Dynamisch .pas Dateien usen/laden

  Alt 18. Jun 2009, 21:07
Biete Interface-Funktionen an
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.606 Beiträge
 
#3

Re: Dynamisch .pas Dateien usen/laden

  Alt 18. Jun 2009, 23:30
Um diese ANtwort etwas weiter auszuführen:

Deine ClassXXXX dll's müssen alle zum Beispiel die Unit 'CommonClasses' kennen. In dieser Unit CommonClasses ist ein Interface definiert, welches z.B. die Ad-Funktion definiert. Die Classes.dll und Deine ClassXXXX.dll kennen dieses Interface. Können also auf diesem ICommonClass.Add aufrufen.

In Deinem Hauptprogramm hast Du dann eine Klasse, die das Interface ICommonClass implementiert. In der Methode Add() auf dieser Klasse steht dann eben Memo1.Lines.Add(value); drin. Diese sorgt also für die Weiterleitung an das richtige Ziel.

Da diese Klasse das Interface ICommonClass implementiert kann ein Objekt dieser Klasse auch an die dll's weitergereicht werden, und diese können darauf die Add methode aufrufen, weil sie ja das Interface kennen. Die eigentliche implementierung müssen sie dafür nicht kennen, die wird vom Hauptprogramm eben vorher an die dll übergeben.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:42 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz