Einzelnen Beitrag anzeigen

Benutzerbild von christian.noeding
christian.noeding

Registriert seit: 26. Mai 2005
Ort: Knw.-Remsfeld
119 Beiträge
 
Delphi XE2 Professional
 
#1

WieFunktion des Hauptprogrammes über Pointer aus DLLstarten?

  Alt 15. Sep 2006, 11:44
Hallo Delphi-Progger!

Die Suchfunktion brachte bislang nur Fragen, aber keine Antworten zu folgendem Problem:

ich binde eine DLL dynamisch in mein Hauptprogramm. Nun lese ich bislang meine Daten aus der DLL zyklisch über einen Timer aus. Das ist doof, da Timingprobleme und unnötige Systemauslastung vorliegen.

Ich möchte nun meiner DLL die Adresse einer Auslesefunktion meines Hauptprogrammes übergeben:

DLLActivate(@TForm1.GetValue); // DLLActivate(Funktionsadresse:Pointer) GetValue ist in diesem Falle eine einfache procedure, die andere Funktionen der DLL aufruft und somit Datensätze aus der DLL liest. Somit würde ich das Abrufen der DLL Funktionen nur noch dann vornehmen, wenn sich wirklich was in der DLL verändert hat (z.B. bei Benutzereingaben)

Aber wie kann ich diese Adresse/Pointer nutzen, um meine Funktion im Hauptprogramm aufzurufen? Ich muss ja irgendeine Verbindung zwischen Pointer und einem Funktionsprototyp herstellen, oder? Das sind zwar sicher Basics im Programmieren, aber ich habe irgendwie ein Brett vor dem Kopf.


Vielen Dank für jede Hilfe
Christian!
Christian Nöding
  Mit Zitat antworten Zitat