Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi DLL in exe einbinden (https://www.delphipraxis.net/36138-dll-exe-einbinden.html)

emsländer 16. Dez 2004 11:59


DLL in exe einbinden
 
Moin die Kollegen,

gibt es eine Möglichkeit, dlls direkt in die .exe mit einzubinden, so das man die nicht mitliefern muss?
Ich meine damit natürlich, direkt beim Compilieren mit einbinden.

Gruss

EL

Bernhard Geyer 16. Dez 2004 12:31

Re: DLL in exe einbinden
 
Nein.

Solange du nur die DLL hast und nicht den Quellcode besteht keine Möglichkeit.
Die einzige Möglichkeit ist die DLL dynamisch zu binden, so das wenn die DLL fehlt nicht sofort eine Fehlermeldung von Windows kommt, sondern du selbst die Möglichkeit hast eine Meldung zu bringen.

emsländer 16. Dez 2004 12:37

Re: DLL in exe einbinden
 
Hi,

die C-Sourcen hätte ich ...


Gruss

EL

Bernhard Geyer 16. Dez 2004 13:05

Re: DLL in exe einbinden
 
Zitat:

Zitat von emsländer
die C-Sourcen hätte ich ...

Dann könntest Du versuchen über Object-Dateien als Zwischenformat zu gehen.
Aber auf diesem Gebiet bin ich eine unbeschriebenes Blatt. Hier müssen C++/Delphi-Profis ran.

Luckie 16. Dez 2004 13:13

Re: DLL in exe einbinden
 
Wieso sollte das nicht gehen? Pack die DLL in die Ressource deiner Anwendung. Beim Start speicherst du dann die DLL auf der Festplatte. Siehe dazu Delphi-Referenz durchsuchenTResourceStream.

Bernhard Geyer 16. Dez 2004 13:16

Re: DLL in exe einbinden
 
Zitat:

Zitat von Luckie
Wieso sollte das nicht gehen? Pack die DLL in die Ressource deiner Anwendung. Beim Start speicherst du dann die DLL auf der Festplatte. Siehe dazu Delphi-Referenz durchsuchenTResourceStream.

Diese Lösung hat aber ein paar Nachteile, wenn:
- Der User keine Schreibrechte auf das Anwendungsverzeichnis hat (z.B. liegt auf Netzlaufwerk, oder User ohne Adminrechte)
- Die Anwendung von CD gestartet wird

Und außerdem muß die DLL dann auch dynamisch gebunden sein.

Luckie 16. Dez 2004 13:21

Re: DLL in exe einbinden
 
Ich schreuibe sie immer ins temporäre Verzeichnis des Benutzers und lösche sie dann auch wieder.

Und das dynamische Einbinden sollte kein Problem sein.


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:27 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