BURADA REKLAM VERİN
 
Şimdi Üye Ol | Şifremi Unuttum

Content on this page requires a newer version of Adobe Flash Player.

Get Adobe Flash player

Ana SayfaSanalkurs.netProgramlarSanalkurs.netÖnemli SitelerSanalkurs.netYazarlarSanalkurs.netDers EkleSanalkurs.netE-DergiSanalkurs.netBlog Sanalkurs.netİletişimSanalkurs.netForum
 
Anasayfa » Delphi (78 ders)
 
Delphi 7'de server ve client olayı

Yazar: Ziya Kahraman  
Eklenme: 22.09.2007   Okunma: 2575    Puan: 3.4   Seviyesi:  Orta
 
Delphi 7'de ağ üzerinde çalışan programlar mı yapmak istiyorsunuz? O zaman bu server ve client olayını iyi anlamalı ve uygulamalısınız önce..

Şimdi örnek olarak basit chat programıyla konuya açıklık getirelim. Program iki parçadan oluşuyor. Bir parçası ana kısım olan server, diğeri de şube yani diğer bir deyişle client..

SERVER TARAFI


unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Sockets, StdCtrls;

type
  TForm1 = class(TForm)
    TcpServer1: TTcpServer;
    Label1: TLabel;
    Edit1: TEdit;
    Memo1: TMemo;
    Label2: TLabel;
    procedure TcpServer1Accept(Sender: TObject;
      ClientSocket: TCustomIpClient);
    procedure FormCreate(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.TcpServer1Accept(Sender: TObject;
  ClientSocket: TCustomIpClient);
  VAR
  X:String;
  begin
Edit1.Text:=ClientSocket.RemoteHost;
X:=ClientSocket.Receiveln();// PORTU OKUR
Memo1.Lines.Add(X);// MEMOYA AKTARIR
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
TcpServer1.LocalPort:="20000";//string tip
TcpServer1.Active:=True; // 20000 numaralı portu dinlemeye alır

end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
TcpServer1.Close;
end;

end.



CLIENT TARAFI

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, XPMan, StdCtrls, Buttons, Sockets, ComCtrls;

type
  TForm1 = class(TForm)
    XPManifest1: TXPManifest;
    StatusBar1: TStatusBar;
    Edit1: TEdit;
    BitBtn1: TBitBtn;
    TcpClient1: TTcpClient;
    Memo1: TMemo;
    procedure BitBtn1Click(Sender: TObject);
    procedure TcpClient1Connect(Sender: TObject);
    procedure TcpClient1Disconnect(Sender: TObject);
    procedure TcpClient1Error(Sender: TObject; SocketError: Integer);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

 

procedure TForm1.BitBtn1Click(Sender: TObject);
VAR
A:String;
begin
A:=Memo1.Lines.Text;
TcpClient1.RemoteHost:=Edit1.Text;
TcpClient1.RemotePorT:="20000";
TcpClient1.Active:=False;
TcpClient1.Active:=True;
TcpClient1.Sendln("SELAM");
end;

procedure TForm1.TcpClient1Connect(Sender: TObject);
begin

end;

procedure TForm1.TcpClient1Disconnect(Sender: TObject);
begin

end;

procedure TForm1.TcpClient1Error(Sender: TObject; SocketError: Integer);
begin

end;

procedure TForm1.FormCreate(Sender: TObject);
begin

end;

end.



İşte bu kadar kodları inceleyip yorumlarsanız olayı kapacağınıza eminim.. Başka türlü anlatılabilirdi belki ama uygulamalı daha iyi anlaşılacağını düşündüğüm için bu yolu tercih ettim.. Herkese başarılar..
 

Paylas  

Delphi 7'de server ve client olayı Dersini Yazdirin
Yazdır

"Delphi 7'de server ve client olayı" dersi için 15 yorum var

23.09.2007 myp diyor ki:
Bu programı .rar 'layıp atmanız mümkün mü ?
Çözemedimde ben olayı..

03.10.2007 nokia1972 diyor ki:
PAYLAŞIM İÇİN TEŞEKKÜRLER

13.10.2007 PAUL38 diyor ki:
Keşke neler kullanıldığınıda yazsaymışınız örneği yapmamız daha kolay olurdu ama genede çok teşekkürler

14.10.2007 cumhur diyor ki:
kodları vermeniz güzel ama neyi nasıl yaptığını biraz değinseniz güzel olurdu. yeni başlayanlar için/ki ben/ açıklamalı olurdu...

19.10.2007 ziyade diyor ki:
Arkadaşlar kodlardan neler kullanıldığını çıkarmayı göstersek daha yerinde olacak galiba.. Kodlarda procedure deyiminden sonra bir nokta olur ve noktanın ardından kullanılan bileşenin adı ve numarası yazar. Eğer bileşene özel isim verilmemişse -ki örneklerimizde verilmemiştir- orijinal adından çıkarılır bileşenin ne olduğu ve numarası da kaç tane olduğunu gösterir bize.. Zira Delphi Form üzerine attığımız bileşenlere otomatik olarak 1'den başlamak üzere ismin ardından numara verir..

15.02.2008 MaDWaGaBoND diyor ki:
ben daqha yeniyimde ya bunlara kaç tane buton kaç tane ne eklicez onlarıda gösterseniz çok iyi olurdu ya onlarıda gösterir misiniz lütfen

18.02.2008 barissagir diyor ki:
Dostum,
bi sorumolcak

neden hep remotePort no ya 20000 yazdıyoruz.
mesela ben modeme wireless ile bağlanıyorum,
benim port nom ne olcak?

25.02.2008 hack425 diyor ki:
peki ağda değilde internet uzerinden bu sekilde bir program nasil olacak kardes ??

20.03.2008 polemarkhos diyor ki:
biraz daha detaya gir seniz güzzel olacak ne ler kullanacamı bilmiyorum ben yeni başladım.ama gende sol emeğe saygı aline sağlık

28.04.2008 nevofam diyor ki:
evet daha detaylı olsa memnun kalacam. kolay gelsin.

24.06.2008 oglebeli78 diyor ki:
hocam bu işi internet üzerinden nasıl yapabilicez
ben bir program yazıyorum kısaca özet geçersek ana makınede değişiklik yapıldığında diğer uzak mesafe pclerinde yapılan değişikliğin aynen görünmesini istiyorum.Değişikliği sadece ana makınedeki kullanıcı yapabılmeli.Kullanıcılar bu programa mudahale edememli.ana makınede yazılacak, onlarda sadece görüntülenecek bu tarzda olacak programı nasıl yapabilirim.Programın internet baglantısını onlara gönderıcegim mesajları nasıl yapabilirim.Saygılar..

03.07.2008 ziyade diyor ki:
Dediğin şekilde bir programda server kısmı ana makine olur, client de kullanıcı olur. Kullanıcının programındaki girişleri (edit, radiobutton vs.) yazıma kapatırsın böylece onlar gönderim yapamaz, yalnızca ana makina tarafından gönderilenleri görebilirler. İnternet üzerinden yapabileceğin bir programdır bu ve bu olaydan hiç bir farklı mantık taşımaz. ip numaralarını kullanman gerekir ki bu programın da zaten mantığı budur. Kolay gelsin..

16.08.2008 Johnicik38 diyor ki:
valla ben baya uğraştım galiba aynı bilg. içinde yaptığım içinmi çalışmıyor

22.08.2008 mkenger diyor ki:
görsel dili yazılı olarak ve resim desteği olmadan anlamak zor. keşke nasıl yapıldığını görsel olarak anlatsaydın.

  BU DERSE YORUM EKLEYİN

Üye olmadan yorum ekleyemezsiniz !


UYARI: SANALKURS.net'te yer alan materyaller ile ilgili her türlü sorumluluk hazırlayan veya gönderene aittir. Yazarlar, gönderdikleri makale ve derslerle başkalarını yanıltıcı bilgi veremezler. SANALKURS.net bilgilerin kullanımı sonucunda doğacak hata ve zararlardan sorumlu tutulamaz. SANALKURS.net'te yer alan bir makale link vermek ve kaynak göstermek şartıyla başka bir sitede yayınlanabilir. SANALKURS.net kullanıcıları ve üyeleri, üçüncü kişilerin telif hakkı sahibi bulunduğu hiçbir yazı, fotoğraf, resim vb. materyal ve ürünü kullanamazlar. SANALKURS.net kullanıcı ve yazarlarının, üçüncü kişilerin telif hakkı sahibi olduğu yazı, resim vb. ürünleri izinsiz kullanması durumunda, her türlü hukuki ve cezai sorumluluk kendilerine aittir.
 İSTATİSTİKLER
XML Kaynağımızdan yararlanarak sitemizdeki derslerimizi masaüstünüzden yada web sitenizden takip edebilirsiniz
ÇEVRİMİÇİ 44 Ziyaretçi, 1 Üye
ezdalak
Bugün: 1120, Dün: 10984, Bu Ay: 114868, Toplam Ziyaret: 5389767, Toplam Üye: 212361, Son Üye:
Toplam Ders: 2823, Toplam Yazar: 56, Toplam Dosya: 51, Toplam Link: 27
   
RSS Kaynağımızdan yararlanarak sitemizdeki derslerimizi masaüstünüzden yada web sitenizden takip edebilirsiniz