Delphi DLL'leri oluşturma ve kullanma

click fraud protection

Dinamik Bağlantı Kitaplığı (DLL) tarafından çağrılabilen bir dizi yordamdır (küçük programlar) uygulamalar ve diğer DLL'ler. Birimler gibi, birden çok birim arasında paylaşılabilecek kod veya kaynaklar içerirler uygulamalar.

DLL kavramı, Windows mimari tasarımının çekirdeğidir ve çoğunlukla Windows sadece bir DLL koleksiyonudur.

Delphi ile, kendi DLL'lerinizi yazabilir ve kullanabilirsiniz ve hatta diğer sistemlerle veya geliştiricilerle geliştirilmiş olup olmadıklarına bakılmaksızın işlevleri çağırabilirsiniz. Visual Basicveya C / C ++.

Dinamik Bağlantı Kütüphanesi Oluşturma

Aşağıdaki birkaç satır Delphi kullanarak basit bir DLL nasıl oluşturulacağını gösterecektir.

Başlangıç ​​için Delphi'yi başlatın ve şuraya gidin: Dosya> Yeni> DLL yeni bir DLL şablonu oluşturmak için. Varsayılan metni seçin ve bununla değiştirin:

kütüphane TestLibrary;

kullanımları SysUtils, Sınıflar, İletişim Kutuları;

prosedür DllMessage; ihracat;başla

 ShowMessage ('Bir Delphi DLL'den Merhaba dünya');

son;

ihracat DllMessage;

BeginEnd. 

instagram viewer

Eğer bakarsanız proje dosyası herhangi bir Delphi uygulamasının, ayrılmış sözcükle başladığını göreceksiniz. program. Buna karşılık, DLL'ler her zaman kütüphane ve sonra bir kullanımları herhangi bir birim için madde. Bu örnekte, DllMessage basit bir mesaj göstermekten başka bir şey yapmaz.

Kaynak kodun sonunda bir ihracat DLL'den başka bir uygulama tarafından çağrılabilecek şekilde gerçekte dışa aktarılan rutinleri listeleyen deyim. Bunun anlamı, diyelim ki bir DLL dosyasında beş yordam ve bunlardan yalnızca iki tanesinin ( ihracat bölümü) harici bir programdan çağrılabilir (geri kalan üçü "alt prosedürlerdir").

Bu DLL dosyasını kullanabilmek için şu tuşa basarak derlememiz gerekir: Ctrl + F9. Bu adlı bir DLL oluşturmanız gerekir SimpleMessageDLL.DLL projeler klasörünüzde.

Son olarak, statik olarak yüklenmiş bir DLL dosyasından DllMessage yordamının nasıl çağrılacağına bir göz atalım.

Bir DLL dosyasında bulunan bir prosedürü içe aktarmak için anahtar kelimeyi kullanabilirsiniz. dış prosedür beyanında. Örneğin, yukarıda gösterilen DllMessage yordamı göz önüne alındığında, çağıran uygulamadaki bildirim şöyle görünür:

prosedür DllMessage; dış 'SimpleMessageDLL.dll' 

Bir prosedüre gerçek çağrı aşağıdakilerden başka bir şey değildir:

 DllMessage; 

Delphi formunun tüm kodu (ad: Form1), bir TButton ile (adlı Buton 1), DLLMessage işlevini çağıran, şuna benzer:

birim Ünite 1;

arayüz


kullanımları

 Windows, Mesajlar, SysUtils, Varyantlar, Sınıflar,

 Grafikler, Kontroller, Formlar, Diyaloglar, StdCtrls;


tip

 TForm1 = sınıf (TForm)

 Düğme 1: TButton;

prosedür Button1Click (Gönderen: TObject);özel{Özel beyanlar}halka açık{Herkese açık beyanlar}son;

var

 Form1: TForm1;


prosedür DllMessage; dış 'SimpleMessageDLL.dll'

uygulama


{$ R * .dfm}


prosedür TForm1.Button1Click (Gönderen: TObject);başla

 DllMessage;

son;

son. 

instagram story viewer