Hogyan lehet DLL fájlokat létrehozni és használni a Delphi-ben

A Dynamic Link Library (DLL) olyan rutinok (kis programok) gyűjteménye, amelyeket meghívhat alkalmazások és egyéb DLL-ek. Mint az egységek, kódot vagy erőforrásokat tartalmaznak, amelyek megoszthatók több között alkalmazásokat.

A DLL-ek fogalma a Windows építészeti tervezésének lényege, és a Windows nagyrészt egyszerűen egy DLL-gyűjtemény.

A Delphi segítségével saját DLL-eket írhat és használhat, és akár hívási funkciókat is lehet, függetlenül attól, hogy más rendszerekkel vagy fejlesztőkkel fejlesztették-e őket, például Visual Basicvagy C / C ++.

Dinamikus link könyvtár létrehozása

A következő néhány sor bemutatja, hogyan lehet Delphi segítségével létrehozni egy egyszerű DLL-t.

Az elején indítsa el a Delphit, és keresse meg a Fájl> Új> DLL új DLL sablon készítéséhez. Válassza ki az alapértelmezett szöveget, és cserélje le az alábbiakra:

könyvtár TestLibrary;

felhasználások SysUtils, osztályok, párbeszédek;

eljárás DllMessage; export;kezdődik

 ShowMessage ('Hello world from Delphi DLL');

vég;

export DllMessage;

beginend. 

instagram viewer

Ha megnézed a projekt fájl bármely Delphi alkalmazás esetén látni fogja, hogy az a fenntartott szóval kezdődik program. Ezzel szemben a DLL-ek mindig kezdődik könyvtár majd a felhasználások záradék minden egységre. Ebben a példában a DllMessage Az eljárás követi, amely nem tesz semmit, csak egy egyszerű üzenetet mutat.

A forráskód végén egy export utasítás, amely felsorolja azokat a rutinokat, amelyeket ténylegesen exportálnak a DLL-ből oly módon, hogy egy másik alkalmazás meghívhatja őket. Ez azt jelenti, hogy mondhatunk öt eljárást a DLL-ben, és csak kettő közülük (a export szakasz) egy külső programból hívható meg (a fennmaradó három "alprogram").

A DLL használatához le kell állítanunk a megnyomásával Ctrl + F9. Ennek létre kell hoznia egy úgynevezett DLL-t SimpleMessageDLL.DLL a projekt mappájában.

Végül nézzük meg, hogyan lehet meghívni a DllMessage eljárást statikusan betöltött DLL-ből.

A DLL-ben szereplő eljárás importálásához használhatja a kulcsszót külső az eljárás nyilatkozatában. Például, tekintettel a fent bemutatott DllMessage eljárásra, a hívó alkalmazásban szereplő nyilatkozat a következőképpen néz ki:

eljárás DllMessage; külső 'SimpleMessageDLL.dll' 

Az eljárás tényleges meghívása nem más, mint:

 DllMessage; 

A Delphi űrlap teljes kódja (név: Form1), TButtonnal (név alatt button1), amely meghívja a DLLMessage funkciót, így néz ki:

Mértékegység egység1;

felület


felhasználások

 Windows, Üzenetek, SysUtils, Változatok, Osztályok,

 Grafika, Vezérlők, Űrlapok, Párbeszédek, StdCtrls;


típus

 TForm1 = osztály (TForm)

 1. gomb: TB gomb;

eljárás Button1Click (Feladó: TObject);magán{Magánnyilatkozatok}nyilvános{Nyilvános nyilatkozatok}vég;

var

 1. forma: TForm1;


eljárás DllMessage; külső 'SimpleMessageDLL.dll'

végrehajtás


{$ R * .dfm}


eljárás TForm1.Button1Click (Feladó: TObject);kezdődik

 DllMessage;

vég;

vég.