Einzelnen Beitrag anzeigen

gmc616

Registriert seit: 25. Jun 2004
Ort: Jena
627 Beiträge
 
Delphi 10.3 Rio
 
#1

DLL aus DCU läßt sich nicht laden

  Alt 7. Jul 2008, 16:37
Hallo DP,

seit Neustem habe ich ein Problem mit meinem Delphi 7. Und zwar:

Ich schreibe an einem Programm, welches DLLs benutzt, nämlich meine eigenen.
Beide "Programm-Teile", die Application und die DLL benutzen Funktionen aus den gleichen Units.
Wenn ich die Application erstelle, über "Projekt erstellen", erzeugt der Compiler die DCUs und legt sie in den gleichen Ordner, wo auch die PAS-Dateien liegen.

Starte ich die Application und lade meine DLL mittels LoadLibrary bekomme ich ein Handle zurück mit dem ich später mein DLL-Funktionen einbinden kann. Klappt soweit alles prima.

Wenn nun aber die DLL compiliere, verwendet der Compiler (oder der Linker, weiß ich nicht) nicht die PAS-Dateien, sondern die bereits compilierten DCU-Dateien. Ich denke das ist von Seiten Delphi auch gewollt so und prinzipiell auch erst mal nicht falsch.

Lade ich nur die DLL, die mit Hilfe der DCU's erstellt worden ist, wieder mit LoadLibrary, erhalte ich als Handle 0 zurück.

Erst wenn ich die DCUs lösche und die DLL erneut compiliere kann ich in meiner Application die DLL wieder korrekt laden.

Gibt es einen Grund dafür? Habt ihr das schon erlebt?
Könnten unterschiedliche Compiler-Einstellungen der Grund dafür sein? (Obwohl ich in beiden "Teilen" die gleichen Einstellungen verwende)

Komisch! ... und nervig!

Auf Antwort hoffend,
gmc
  Mit Zitat antworten Zitat