![]() |
DLL statisch laden
Hallo zusammen,
die meisten, die sich mit DLL beschäftigen haben wohl schon das Beispiel gesehen
Delphi-Quellcode:
Ich habe es bisher nie so gemacht, sondern nur so:
unit DLLUnit;
interface Uses Windows; Function addiere (Value1, Value2 : Integer) : Integer; stdCall; implementation Function addiere (Value1, Value2 : Integer) : Integer; stdCall; external 'rechne.DLL'; end.
Delphi-Quellcode:
d.h. alles im Interface-Sector und nichts im Implementation. Mach ich da was falsch?
unit DLLUnit;
interface Uses Windows; Function addiere (Value1, Value2 : Integer) : Integer; stdCall; external 'rechne.DLL'; implementation end. Funktionieren tut es. Grüße Gerd |
AW: DLL statisch laden
Zitat:
Im Laufe meines Delphi-Lebens hab ich schon beide Varianten benutzt (meist aber die zweite ohne implementation), aber ich kann dir nicht sagen, warum einmal die eine und ein andermal die andere. Grüße Dalai |
AW: DLL statisch laden
Zitat:
Damit man aus anderen Units auf diese Funktion zugreifen kann.. oder? gruss |
AW: DLL statisch laden
Da beide Varianten die Deklaration im
Delphi-Quellcode:
stehen haben, ist der Zugriff von anderen Units aus bei beiden Varianten möglich.
interface
Grüße Dalai |
AW: DLL statisch laden
Das hab ich auch noch nie verstanden, ist doch wesentlich mehr Schreib/Textaufwand. Ich glaube, die Frage stellt sich jeder der die Delphi-Sourcen anschaut.
|
AW: DLL statisch laden
Zitat:
Zitat:
Mehr Code macht einen Code ja nicht übersichtlicher und bei Änderungen muss ich an zwei Stellen ändern. War abr nicht sicher, ob es nicht doch einen Sinn gibt. Danke Gerd |
AW: DLL statisch laden
Beide Angaben stellen eine statische Bindung der DLL dar.
Dynamisch wäre es wenn du es wie folgt machst: ![]() Oder man nutzt das verzögerte Laden mittels Schlüsselwort delayed, wenn man auch funktionsfähig sein will, auch wenn die DLL nicht vorhanden ist. DrBob hat auch dazu einen ![]() |
AW: DLL statisch laden
Zitat:
z.B. die Benutzerverwaltung wird dagegen statisch geladen. Die ist immer die gleiche und wird auch immer ebnötigt. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:53 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz