Computerwissenschaften

Erstellen und Verwenden von DLLs in Delphi

Eine Dynamic Link Library (DLL) ist eine Sammlung von Routinen (kleinen Programmen), die von Anwendungen und anderen DLLs aufgerufen werden können. Wie Einheiten enthalten sie Code oder Ressourcen, die von mehreren Anwendungen gemeinsam genutzt werden können.

Das Konzept der DLLs ist der Kern des Windows-Architekturdesigns, und Windows ist größtenteils einfach eine Sammlung von DLLs.

Mit Delphi können Sie Ihre eigenen DLLs schreiben und verwenden und sogar Funktionen aufrufen, unabhängig davon, ob sie mit anderen Systemen oder Entwicklern wie Visual Basic oder C / C ++ entwickelt wurden oder nicht .

 

Erstellen einer Dynamic Link Library

Die folgenden Zeilen zeigen, wie Sie mit Delphi eine einfache DLL erstellen.

Starten Sie zunächst Delphi und navigieren Sie zu Datei> Neu> DLL , um eine neue DLL-Vorlage zu erstellen. Wählen Sie den Standardtext aus und ersetzen Sie ihn durch folgenden:


 Bibliothek TestLibrary;

 

verwendet SysUtils, Klassen, Dialoge;

 

Prozedur DllMessage; Export ; Start

 

 ShowMessage ('Hallo Welt aus einer Delphi-DLL');

 

 Ende ;

 

exportiert DllMessage;

 

beginnen .

Wenn man sich die aussehen Projektdatei jeder Delphi – Anwendung, werden Sie sehen , dass es mit dem reservierten Wort beginnt Programm . Im Gegensatz dazu beginnen DLLs immer mit einer Bibliothek und einer Verwendungsklausel für alle Einheiten. In diesem Beispiel folgt die DllMessage- Prozedur, die nichts anderes tut, als eine einfache Nachricht anzuzeigen .

Am Ende des Quellcodes befindet sich eine Exportanweisung , in der die tatsächlich aus der DLL exportierten Routinen so aufgelistet sind, dass sie von einer anderen Anwendung aufgerufen werden können. Dies bedeutet, dass Sie beispielsweise fünf Prozeduren in einer DLL haben können und nur zwei davon (im Exportabschnitt aufgeführt ) von einem externen Programm aufgerufen werden können (die restlichen drei sind „Unterprozeduren“).

Um diese DLL verwenden zu können, müssen wir sie durch Drücken von Strg + F9 kompilieren . Dadurch sollte eine DLL mit dem Namen SimpleMessageDLL.DLL in Ihrem Projektordner erstellt werden .

Lassen Sie uns abschließend einen Blick darauf werfen, wie die DllMessage-Prozedur von einer statisch geladenen DLL aufgerufen wird.

Um eine in einer DLL enthaltene Prozedur zu importieren, können Sie das Schlüsselwort external in der Prozedurdeklaration verwenden. In Anbetracht der oben gezeigten DllMessage-Prozedur würde die Deklaration in der aufrufenden Anwendung beispielsweise folgendermaßen aussehen:


 Prozedur DllMessage; externe 'SimpleMessageDLL.dll'

Der eigentliche Aufruf einer Prozedur ist nichts anderes als:


 DllMessage;

Der gesamte Code für ein Delphi-Formular (Name: Form1 ) mit einem TButton (Name Button1 ), der die DLLMessage-Funktion aufruft, sieht ungefähr so ​​aus:


 Einheit Einheit1;

 

Schnittstelle

 


 

 Verwendet

 

 Windows, Nachrichten, SysUtils, Varianten, Klassen,

 

 Grafiken, Steuerelemente, Formulare, Dialoge, StdCtrls;

 


 

 Art

 

 TForm1=Klasse (TForm)

 

 Button1: TButton;

 

 Prozedur Button1Click (Absender: TObject); private {Private Deklarationen} public {Öffentliche Deklarationen} end ;

 

var

 

 Form1: TForm1;

 


 

 Prozedur DllMessage; externe 'SimpleMessageDLL.dll'

 

Implementierung

 


 

 {$ R * .dfm}

 


 

 Prozedur TForm1.Button1Click (Absender: TObject); Start

 

 DllMessage;

 

 Ende ;

 

Ende .

Similar Posts

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.