Dll'ler İle Çalışma

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
balbusar
Üye
Mesajlar: 4
Kayıt: 19 Şub 2015 04:12

Dll'ler İle Çalışma

Mesaj gönderen balbusar » 14 Mar 2015 09:48

Merhabalar arkadaşlar delphide iyi olan tanıdıgım biri var ve bana ilerledikçe bazı şeyleri dll ile yap demişti şimdi ben mesela bir fonksiyon yapıcam windowsda açık olan pencere adlarını alıcak bunu normal exenin değil dll nin yapmasını ve exeye yollamasını istiyorum nasıl yapabilirim şimdiden teşekkürler.

Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4731
Kayıt: 09 Ara 2003 08:13
Konum: Ankara
İletişim:

Re: Dll'ler İle Çalışma

Mesaj gönderen mrmarman » 14 Mar 2015 09:53

Şöyle yapabilirsiniz, bunu arkadaşınıza da sorarsanız teyid edecektir : önce verilen iki sayının toplamını alıp size cevabı döndüren DLL'yi yazarak. Şaka yapmıyorum, çünkü bundan farklı bir şey değil.
Resim Resim

balbusar
Üye
Mesajlar: 4
Kayıt: 19 Şub 2015 04:12

Re: Dll'ler İle Çalışma

Mesaj gönderen balbusar » 14 Mar 2015 09:55

biraz daha açık olurmusun yane kodlar felan birde exe başlatılınca dll yi arıyacak varmı diye yoksa programı kapatacak felan bunları kod yazarak açıklarmısınız ?

Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4731
Kayıt: 09 Ara 2003 08:13
Konum: Ankara
İletişim:

Re: Dll'ler İle Çalışma

Mesaj gönderen mrmarman » 14 Mar 2015 10:02

Örnek proje hazırladım, bu mesaj ekinde göreceksin.
Ayrıca plugin şeklinde dinamik bir yapı istediğine göre aradığın cevap eskilerde mevcut. bu linkten inceleyebilirsin.

DLL Projesi kaynak kodu

Kod: Tümünü seç

library BenimDLL;

uses
  SysUtils,
  Classes;

{$R *.res}

function ikisayinintoplami( a, b : Integer ): Integer;
begin
  Result := a + b;
end;

Exports
  ikisayinintoplami;

begin
end.
Bunu kullanacak ana proje kaynak kodu

Kod: Tümünü seç

function ikisayinintoplami( a, b : Integer ): Integer;
External '..\DLL_Proje\BenimDLL.dll';


procedure TForm1.BitBtn1Click(Sender: TObject);
Var
  x, y : Integer;
begin
  x := 10;
  y := 20;
  ShowMessageFmt(' %d + %d = %d', [ x, y, ikisayinintoplami(x,y) ]);
end;
Dosya ekleri
DLL_Ornegi.rar
Örnek DLL proje
(235.67 KiB) 21 kere indirildi
Resim Resim

Kullanıcı avatarı
warder
Üye
Mesajlar: 255
Kayıt: 10 Mar 2004 04:59

Re: Dll'ler İle Çalışma

Mesaj gönderen warder » 15 Mar 2015 09:52

Bende yeni başlamış bir programcının dll nedir, nasıl çalışır, gibi deneyimleri öğrenmek yerine neden açık olan windows pencerelerinin adlarını alarak başlamak istediğini merak ettim.

ikinci konu
Klavyeden girilen karakterleri alan ve onu bir gizli dosyada biriktirip belirlediğim mail adresine gönderen dll kodlarını da örnekle açıklarsanız dll konusunda epey bilgi alacağım...

Birde hazır bulmuşken merak ettiğim iki konu daha var.
1. Çoğu parası olmayanlar, olanların (zenginlerin) kandırılıp, hemen paraları elinden alınacak kadar aptal olduklarını düşünür, her fırsatta kazıklamaya çalışırlar. Belli ki ondan daha şanslı ve çoğu durumda daha akıllı (eğitimli, bilgili vb.)...

2. Okumuş, biligili tabir ettikleri kişileri salak(!) yerine koyup ağzından laf almaya çalışanlar (köylü kurnazı denilenler)...

Bu iki durumdaki kişilerin o sırada beyninde çalışan programın(!) akış şemasını merak ediyorum.
Birde mümkünse dll olsun..


Kimse alınmasın bu sayfada ne varsa bu yazdıklarımı tetikledi..
Akış şemasını ve dll halini isteyen olursa :)
... Muhtaç olduğun kudret, damarlarındaki asil kanda mevcuttur!
Mustafa Kemal Atatürk...

Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4731
Kayıt: 09 Ara 2003 08:13
Konum: Ankara
İletişim:

Re: Dll'ler İle Çalışma

Mesaj gönderen mrmarman » 15 Mar 2015 10:34

Hedefini büyük tut yarısını başar derim ben de. Yeni başlayanları desteklemek lazım.
Empati kurmayı bırakmaya başladığımı hissedersem hemen kendimi toparlarım, eğer geç kalırsam senin gibi düşüneceğimi biliyorum çünkü.

Soruya bakınca ben de bu kadarını görüyorum. Zaten bir şey kazandıramayacağımı düşündüğümde cevap da yazmıyorum. O zaman cevap verilmemiş sorular linkine bir defa fazla tıklıyorum o kadar.
Resim Resim

Cevapla