Einzelnen Beitrag anzeigen

slemke76

Registriert seit: 29. Mär 2005
Ort: Quakenbrück
146 Beiträge
 
#3

AW: Interface-Struktur - Loader für DLLs

  Alt 20. Jun 2013, 20:20
** bump **

Hallo zusammen,

ich bin heute mal wieder über den Code gestolpert - leider habe ich damals keine Lösung an das Problem bekommen.

Aus diesem Grund habe ich nochmal ein Beispiel-Projekt zusammengestellt, in der Hoffnung, dass mir jemand helfen kann. Über die COM Objekte wie im vorherigen Post geschrieben, möchte ich eigentlich nicht so gerne arbeiten.

Ich habe alles soweit zusammen"gestrichen" wie es ging - das Original-Projekt benutzt Threads, einen für den Import, einen für den Export - das habe ich im Beispiel einfach als Klassen umgebaut.

Es gibt im Hauptprojekt also eine TBaseClass, in der unter anderem die Funktion "DLLLoader" drin ist.
Die TExportClass und TImportClass sind von der TBaseClass abgeleitet und sollen jeweils DLLs laden - dafür würde ich natürlich gerne gemeinsamen Code aus der TBaseClass nutzen - die Logik ist in beiden Fällen gleich, das Interface (IExport und IImport) ist natürlich verschieden.

Das Problem sind jetzt solche Dinge in der DLLLoader-Funktion:
TFNGetInterface = function(): IImport; stdcall; oder auch

if (not Supports(GetInterface, IImport)) then GetInterface:=nil; Es gibt beim Compilieren *keine* Fehlermeldung, aber die Export.DLL wird nicht korrekt geladen (klar...).

Kann mir jemand einen Schubser in die richtige Richtung geben?

Grüße
Sebastian
Angehängte Dateien
Dateityp: zip Sample.zip (1,01 MB, 6x aufgerufen)
  Mit Zitat antworten Zitat