Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Wie erstellt Delphi DLLs (https://www.delphipraxis.net/145352-wie-erstellt-delphi-dlls.html)

Florian Hämmerle 30. Dez 2009 07:42


Wie erstellt Delphi DLLs
 
Hallo DPler!

Mich interessiert, welches Programm für die DLL-Erstellung bei Delphi zuständig ist. Macht das der ganz normale Compiler oder ein anderes Programm? Hab nämlich gesucht, ob es ein Delphi2DLL-Programm zum Download gibt, bin aber leider nicht fündig geworden :(

Schöne Grüße, Florian

Neutral General 30. Dez 2009 07:44

Re: Wie erstellt Delphi DLLs
 
Das macht auch der Compiler. DLLs unterscheiden sich von "normalen" Anwendungen eigentlich kaum (gar nicht?). Siehst du auch wenn du mal ne DLL und ne EXE in nen Hexeditor lädst ;)

Florian Hämmerle 30. Dez 2009 07:58

Re: Wie erstellt Delphi DLLs
 
Vielen Dank für die schnelle und erfreuliche Antwort :)
Hex-Editor :) Werd ich mir mal anschauen.

Schönen letzten Tag in 2009 und einen Guten Rutsch.

Schöne Grüße, Florian

himitsu 30. Dez 2009 08:01

Re: Wie erstellt Delphi DLLs
 
Zitat:

Zitat von Neutral General
Das macht auch der Compiler. DLLs unterscheiden sich von "normalen" Anwendungen eigentlich kaum (gar nicht?). Siehst du auch wenn du mal ne DLL und ne EXE in nen Hexeditor lädst ;)

Man kann auch eine EXE als DLL laden.

Luckie 30. Dez 2009 09:54

Re: Wie erstellt Delphi DLLs
 
Zitat:

Zitat von himitsu
Zitat:

Zitat von Neutral General
Das macht auch der Compiler. DLLs unterscheiden sich von "normalen" Anwendungen eigentlich kaum (gar nicht?). Siehst du auch wenn du mal ne DLL und ne EXE in nen Hexeditor lädst ;)

Man kann auch eine EXE als DLL laden.

Bringt aber nur was, wenn sie auch Funktionen exportiert. Eine DLL unterscheidet sich von einer Exe eigentlich nur darin, dass sie keinen Programmeinsprungspunkt besitzt. Und somit dann nur eine lose Sammlung compilierter Funktionen ist, was im Endeffekt eine Exe auch ist. Ein gutes DLL Tutorial hat Olli auf seiner Seite: http://assarbad.net/en/stuff/tutorials/dll_tutorial/

Astat 30. Dez 2009 10:08

Re: Wie erstellt Delphi DLLs
 
Zitat:

Zitat von himitsu
Man kann auch eine EXE als DLL laden.

Genauer, man kann Jedes PE-File laden, unabhängig von der Fileextension.

himitsu 30. Dez 2009 10:11

Re: Wie erstellt Delphi DLLs
 
Zitat:

Zitat von Luckie
Bringt aber nur was, wenn sie auch Funktionen exportiert.

Und das geht ja auch in 'ner EXE :-D

JamesTKirk 30. Dez 2009 10:57

Re: Wie erstellt Delphi DLLs
 
Zitat:

Zitat von Luckie
Eine DLL unterscheidet sich von einer Exe eigentlich nur darin, dass sie keinen Programmeinsprungspunkt besitzt.

Korrektur: Auch eine (Delphi-)DLL hat einen "Programmeinsprungspunkt" (PE-Feld EntryPoint). Wie sonst würden wohl die ganzen Initialization und Finalization Abschnitte durchlaufen werden? :mrgreen:

Der Hauptunterschied zu einer Anwendung ist übrigens das Flag PE_FILE_DLL im PE-Header, das sagt, ob das Image eine DLL oder eine EXE ist.

Gruß,
Sven

Luckie 30. Dez 2009 11:02

Re: Wie erstellt Delphi DLLs
 
Gut, die Initialization und Finalization Abschnitte hab eich jetzt nicht gemeint.

JamesTKirk 30. Dez 2009 11:21

Re: Wie erstellt Delphi DLLs
 
Es wird auch innerhalb einer DLL der Teil zwischen "begin" und "end." in der Programmunit ausgeführt. Also ist auch ein Programmeinsprungpunkt vorhanden :zwinker:

Zudem ist der Zusammenhang der, dass die Initialization und Finalization Abschnitte und der Hauptprogrammabschnitt durch den (von Windows vorgegebenen) DLL-Eintrittspunkt in der Delphi- bzw. FPC-RTL aufgerufen werden.

Aber ich spring jetzt mal nicht weiter auf dem EntryPoint rum :mrgreen:

Gruß,
Sven


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:32 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz