DaHaSiVaR.CoM

Simple Machines Forum
Smf.gen.tr Ödüllü
Seo Webmaster Yarışması
  ANASAYFA |  BUGÜN GİRİŞ YAPANLAR |  ARA |  BİZE ULAŞIN  
Simple Machines Forum Smf.gen.tr Ödüllü Seo Webmaster Yarışması

Kayıt Ol
Forumumuzu en iyi şekilde kullanabilmek için lütfen kayıt olun.
Giriş Yap
Eğer forumda mevcut bir hesabınız varsa lütfen giriş yapın.
Forumumuza Yeni Moderatör Arkadaşlar Alınacaktır.İlgilenen Üyelerimiz Moderatörlük Başvurusu Bölümünden Başvurularını Yapabilirler...
21 Kasım 2008, 19:57:01
Hoşgeldiniz, Ziyaretçi.Lütfen giriş yapın veya kayıt olun.
Konu Bilgileri Kısayollar
Konu Başlığı Delphi İle Veri İletişimi
Cevaplar 4
Sonraki Sonraki Konu
Görüntüleyenler0 Üye ve 1 Ziyaretçi konuyu incelemekte.
Görüntülenme 394
Önceki Önceki Konu

Sayfa: [1]   Aşağı git
  Yazdır  
Gönderen Konu: Delphi İle Veri İletişimi  (Okunma Sayısı 394 defa)
0 Üye ve 1 Ziyaretçi konuyu incelemekte.
31 Aralık 2007, 21:55:26
Deneyimli Üye
*
Üye No: 2925
Mesaj Sayısı: 227
Rep Puanı: 27

Üyelik Bilgileri

Delphi bizlere ağ üzerinden veri iletimini sağlayan birçok nesne sunmaktadır (Internet, intranet, local). Bu makalede 2 Delphi bileşeni üzerinde inceleme yapacağız: TserverSocket ve TclientSocket. Bu iki bileşen TCP/IP bağlantıda okuma ve yazma işlemleri için tasarlanmıştır. Bu makalede ağ üzerinde iletişim kuran basit bir uygulama yapacağız.
Winsock ve Delphi soket bileşenleri

Windows soketleri veya Winsock, Microsoft Windows altında network programlama için bir açık arayüzdür. Winsock, protokol yığın servislerine ulaşabilmek için bize bir takım fonksiyonlar, veri yapıları v.b. imkanlar sunar.
Delphi soket bileşenleri, başka sistemlerle TCP/IP üzerinden ve ilgili diğer protokoller aracılığı ile iletişim kuran uygulamalar yazmanızı sağlar. Soketleri kullanarak, bağlantı üzerinden, nasıl bir network yapısının varolduğu hakkında herhangi bir endişeye kapılmadan diğer makinalarile haberleşmek mümkündür.

TServerSocket ve TClientSocket bileşenleri ile TcpClient, TcpServer ve TudpSocket bileşenleri Delphi bileşen araç çubuğunun Internet paletinde yer almaktadır.

Belirli bir network üzerinde özel bir servise nasıl ulaşılır

En basit cevap; Client makine servise mesaj göndermek için izine sahiptir ve gönderimden sonra karşıdan cevap bekler. Bir network de bunu yapmanın (gönderme veya okuma) en pratik yolu soketleri kullanmaktır.

Porlar ve Hostlar

Bir soket bağlantısı için, soket bileşeni kullanılır. Host ve port belirli yapılara sahiptir. Genelde host, server sisteminin IP adresi için bir takma ad belirtir (Alias). Port ise, server soket bağlantı numarısı olan ID yi belirtir.

Basit bir TEK-YÖN gönderim yapan program

Şimdi bu uygulamayı Socket bileşenlerini kullanarak nasıl yaptığımıza bir bakalım. İki form oluşturacağız. Birisi SERVER için diğeri CLIENT bilgisayarımız için olacak. Amacımız; Client makinadan TEXT yazısını SERVER makinamıza göndermek olacak.

Başlamadan once, Delphi’yi 2 kez çalıştırın. Bir projeyi Client uygulama için diğerinide Server uygulama için kullanacağız.

SERVER tarafı

Formumuzun üzerinde bir tane TServerSocket bileşeni ve bir tane de Tmemo bileşeni koyunuz. Görünümümüz şu şekilde olacaktır:

Ve formumuzun OnCreate olayını aşağıdaki şekilde oluşturunuz:

procedure TForm1.FormCreate(Sender: TObject);
begin
ServerSocket1.Port  23; //port numaramız
ServerSocket1.Active  True; //soketimizi aktif yaptık
end;

formumuzun OnClose olayınıda aşağıdaki hale çeviriniz:

procedure TForm1.FormClose
(Sender: TObject; var Action: TCloseAction);
begin
ServerSocket1.Active  false; //Aktifliğini iptal ediyoruz.
end;

CLIENT tarafı

Client uygulamamız için, bir tane TClientSocket, bir tane Tedit ve bir tanede Tbutton bileşenini formumuza ekleyelim. Formumuz aşağıdaki gibi görünecektir:

Bu formumuzun da kodlarını aşağıdaki şekilde oluşturalım:

procedure TForm1.FormCreate(Sender: TObject);
begin
ClientSocket1.Port  23;
ClientSocket1.Host  ‘10.9.5.1′//Bölgesel TCP/IP server adresi
ClientSocket1.Active  true; //Soketimizi aktif yaptık
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
ClientSocket1.Active  false //Soketimizi pasif yaptık
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
if ClientSocket1.Active then //Eğer soketimiz aktif ise
ClientSocket1.Socket.SendText(Edit1.Text)  //Edit ın içeriğini gönderiyoruz
end;

Zaten kod kendini çok basit bir şekilde ifade ediyor. Client tarafından butonumuza basıldığında Edit1’in içeriğindeki Text ifade, belirlenmiş port ve host adresi ile Server’ımıza gönderilecektir.

SERVER’a geri dönelim

Bu örnek için son uygulamamız şu olcak: Server’a veri gönderen Client’ları görelim. Bunun için OnClientRead olayını kullanacaz. Bu olay Server soketi Client’tan bir veri okuduğu anda gerçekleşecektir.

Bu kodumuzda (Server formumuzda) şu şekilde olacaktır:

procedure Tform1.ServerSocket1ClientRead(Sender: TObject;
Socket: TCustomWinSocket)
begin
Memo1.Lines.Add(Socket.ReceiveText);
end

Kolaydı değil mi J Elbette! Ama programımız sağlıklı çalışmayacaktır. Çünkü birden fazla Client makina Server’a veri göndermeye kalkarsa ne olcak? Bu durumda kodumuzda ufak tefek bir kaç değişiklik işimizi görecektir:

procedure TForm1.ServerSocket1ClientRead(Sender: TObject;
Socket: TCustomWinSocket);
var
i:integer  //Client makina sayısı için
text : string  //Gelen veriyi okumak için
begin
for i  0 to ServerSocket1.Socket.ActiveConnections-1 do
begin
with ServerSocket1.Socket.Connections do
begin
text  ReceiveText; //okunan veri sRec’ e atanır.
if text <> ” then //eğer text boş değil ise
begin
Memo1.Lines.Add(RemoteAddress + ‘ sends ; //Gönderenin adresi
Memo1.Lines.Add(text); //ve gönderdiği Text Memo’ya eklenir.
end;
end;
end;
end;

Hepsi bu. Server bir Client soketten bir veri okuduğunda, Client’ın adresini ve göndermiş olduğu veriyi Memo bileşenine ekler.

kolay gelsin...
« Son Düzenleme: 31 Aralık 2007, 22:04:42 Gönderen: esuma » Moderatöre Bildir   Logged
Robot Moderatör
Anahtar Kelime
*****
Offline Pasif

Mesajlar: 6,225


View Profile
Re: Delphi İle Veri İletişimi
« Posted on: 21 Kasım 2008, 19:57:01 »

 
      uyari
Merhaba ziyaretçi. Öncelikle sitemize hoşgeldiniz. Ben robot moderatör olrak siteden daha fazla yararlanmanız için sitemize üye olmanızı öneririm. iyi eğlenceler.

giris  kayit
Anahtar Kelimeler: Delphi İle Veri İletişimi oyunları, Delphi İle Veri İletişimi programı, Delphi İle Veri İletişimi oyunu indir, Delphi İle Veri İletişimi program yükle, Delphi İle Veri İletişimi download, Delphi İle Veri İletişimi hikayeleri, Delphi İle Veri İletişimi resimleri, Delphi İle Veri İletişimi haber, Delphi İle Veri İletişimi yükle, Delphi İle Veri İletişimi videosu, Delphi İle Veri İletişimi msn eklentisi, şarkı sözleri
Logged
esuma Nickli Üyemize Teşekkür Eden Kullanıcı: YaSaL ( 31 Aralık 2007, 22:06:05)
esuma Nickli Üyemize Rep Veren Kullanıcı: petitbeurre [+]( 09 Mayıs 2008, 21:17:20)
31 Aralık 2007, 22:06:59
Admin
*
Üye No: 1
Cinsiyet: Bay
Mesaj Sayısı: 4,551
Nerden: Denizli
Rep Puanı: 1015
emin

Üyelik Bilgileri

Çok anlamadığımız için bu bölüm boş kalmıştı sayende dolmaya başladı teşekkürler  Wink
Moderatöre Bildir   Logged

Yorum yazınki paylaşımlar devam etsin...

Simple Machines Forum Smf.gen.tr Odullu Seo Webmaster Yarismasi

Linklerin Görülmesine İzin Verilmiyor
Linki Görebilmek İçin Üye Ol veya Giriş Yap
http://www.dahasivar.com/simple_machines_forum_smfgentr_odullu_seo_webmaster_yarismasi-t9387.0.html
31 Aralık 2007, 22:08:38
Deneyimli Üye
*
Üye No: 2925
Mesaj Sayısı: 227
Rep Puanı: 27

Üyelik Bilgileri

yanlız bırakmadıgın icin ben tsk ederim...
Moderatöre Bildir   Logged
11 Temmuz 2008, 11:51:21
Yeni Üye
*
Üye No: 19486
Cinsiyet: Bayan
Mesaj Sayısı: 10
Nerden: mardin
Rep Puanı: 0

Üyelik Bilgileri

Bir programlama dili öğrenmek isteyen ilk olarak bence Delphi'yi öğrensin,hem çok zevkli ve basit.
Moderatöre Bildir   Logged

Batının sahte ihtişamı gözlerimi kamaştırmaya yetmedi zira gözlerimin sürmesi Mekke ve Medineden geldi...
11 Temmuz 2008, 15:49:19
Admin
*
Üye No: 39
Cinsiyet: Bay
Mesaj Sayısı: 1,301
Nerden: Denizli - Edirne
Rep Puanı: 1225
yok

Üyelik Bilgileri WWW

Bir programlama dili öğrenmek isteyen ilk olarak bence Delphi'yi öğrensin,hem çok zevkli ve basit.
sizin gibi arkadaslar bilgilerini bizle paylasırsa neden olmasın herkes bildigini baskasına ogretirse bizi tutabilene ask olsun  Smiley
Moderatöre Bildir   Logged

Linklerin Görülmesine İzin Verilmiyor
Linki Görebilmek İçin Üye Ol veya Giriş Yap
Her Turlu konuda sorun ve İsteklerinizi Burdan Bana ulastırabilirsiniz
Size yardımcı Olmaktan mutluluk duyarım


Linklerin Görülmesine İzin Verilmiyor
Linki Görebilmek İçin Üye Ol veya Giriş Yap
www.kolayarama.co.cc


Linklerin Görülmesine İzin Verilmiyor
Linki Görebilmek İçin Üye Ol veya Giriş Yap
www.gazetemansetleri.co.cc


simple machines forum smf.gen.tr ödüllü seo webmaster yarışması
Sayfa: [1]   Yukarı git
  Yazdır  

DaHaSiVaR.CoM Etiketler
Delphi İle Veri İletişimi

GoogleTagged

 
Gitmek istediğiniz yer:  

Benzer Konular
Konu Başlığı Başlatan Yanıtlar Görüntülenme Son Mesaj
Delphi 7 Türkçe Eğitim Kitabı E-Kitap YaSaL 3 168 Son Mesaj 04 Ekim 2008, 18:32:08
Gönderen: Umtaaka7
Veri kaybetmeden sabit diskleri tekrar bölümlendirin (EASEUS Partition Manager) Program Download Umtaaka7 0 45 Son Mesaj 05 Haziran 2008, 01:32:14
Gönderen: Umtaaka7
Smf Kardeşliği.Com
smf.gen.tr aracılığı ile SMF kullanan siteler arasında yaptığımız SMF Kardeşliği listemizi görmek ister misiniz?

Bu site SM Forumlar Birliğinin Üyesidir
Seo yarışması sponsorları
SMF Destek VTD Design adtech ile reklam 2.0 dönemi başlıyor ve Trkycmhrytllbtpydrklcktr r10.net seo yarışması forum evden eve nakliyat Myhostum
MySQL Kullanıyor PHP Kullanıyor Powered by SMF 1.1.7 | SMF © 2006-2008, Simple Machines LLC | Kaliteli hosting için ForumSunucu
Genel Google Pagerank, SEO tools
XHTML 1.0 Uyumlu! CSS Uyumlu!
Copyright © 2008 dahasivar.com - Her Hakkı Saklıdır.
|Site Map |Site Map2| Site Map3| Arşiv| Arşiv2 | Wap | Wap2 | Wap Forum | XML | Rss| Tagged| Url List