0% menganggap dokumen ini bermanfaat (0 suara)
446 tayangan

Socket Programming Delphi

1. Dokumen tersebut membahas socket programming menggunakan Delphi dan komponen Indy. 2. Indy adalah komponen open source yang mendukung berbagai protokol jaringan seperti HTTP, FTP, dan TCP/IP. 3. Contoh program yang dibahas adalah aplikasi telnet sederhana menggunakan klien dan server berbasis Indy.

Diunggah oleh

Ariez Slankers
Hak Cipta
© Attribution Non-Commercial (BY-NC)
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
446 tayangan

Socket Programming Delphi

1. Dokumen tersebut membahas socket programming menggunakan Delphi dan komponen Indy. 2. Indy adalah komponen open source yang mendukung berbagai protokol jaringan seperti HTTP, FTP, dan TCP/IP. 3. Contoh program yang dibahas adalah aplikasi telnet sederhana menggunakan klien dan server berbasis Indy.

Diunggah oleh

Ariez Slankers
Hak Cipta
© Attribution Non-Commercial (BY-NC)
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 11

Socket Programming Delphi

Ditulis oleh Idris Sabtu, 18 April 2009 09:10

Socket programming adalah bagaimana cara menggunakan socket API ( Application Socket Programming ), untuk menghubungkan komunikasi antara proses remote dan local , programmer yang menggunakan ILE ( Integrated Language Environment) C dapat menggunakan informasi untuk mengembangkan aplikasi socket . Anda juga dapat menggunakan kode socket API dari bahasa ILE lainnya , seperti RPG . JAVA juga mendukung alat penghubung untuk socket programming

Dan maksud dari API adalah sebuah library atau fungsi windows untuk mengeksekusi sebuah perintah yang ada di dalam semua tampilan windows , sebagai contoh untuk tampilan desktop ,screen saver ,shutdown computer dll

Biasanya seorang programmer yang membuat program seperti berbasiskan protocol jaringan kita sebut dia adalah programmer winsock ( windows socket ).

Winsock dapat didefinisikan dan di dokumentasikan oleh standar API untuk pemograman protocols jaringan . Umumnya digunakan untuk program TCP / IP , tetapi dapat juga digunakan untuk program novell ( IPX / SPX ) dan protocol jaringan lainnya . Winsock dapat digunakan untuk DLL ( Dynamic Link Library ) yang merupakan bagian dari Win32 .

Cara kerja dari winsock adalah perpaduan antara IP Address dan port number , lalu apa yang dimaksud dengan IP Address . IP Address adalah sebuah alamat virtual pada setiap computer untuk mengirimkan data , contoh dalam kehidupan nyata adalah setiap kita mengirim surat kita harus menyertakan alamat pengirim dan alamat tujuan , jika tidak ada maka paket tidak bisa dikirim karena tidak jelas alamat pengirim dan alamat penerima . contoh alamat IP Address adalah 192.168.1.1

Lalu yang dimaksud dengan port number ,pada pelayanan jaringan di computer , port number dapat dikatakan sebagai identifikasi khusus untuk setiap proses, contoh jika anda menggunakan layanan internet seperti google .com anda telah menggunakan port number tertentu , yaitu port 80

1 / 11

Socket Programming Delphi


Ditulis oleh Idris Sabtu, 18 April 2009 09:10

Jadi windows socket adalah perpaduan IP Address dan port number , contoh anda mengakses http://www.google.com , kita misalkan google.com memiliki IP Address 66.25.12.25 , sama saja anda mengakses dengan http://www.google.com:80 atau http://66.25.12.25:80 atau untuk layanan chatting seperti MIRC menggunakan port :6666 jadi cara kerja untuk mengakses MIRC adalah alamatserver:portnumber contoh kita anggap IP Address untuk alamatserver chating misalkan DALNET adalah :121.122.204.12 maka prosesnya adalah 121.122.204.12:6666

Kembali ke topic utama kita adalah Indy ( Internet direct ) , indy digunakan untuk membuat aplikasi yang menggunakan protocol jaringan

Indy ( Internet Direct )

Lalu apa indy itu ? indy adalah komponen open source yang terdiri dari protocol internet yang sudah begitu popular ,seperti HTTP , FTP , SMTP , TCP , UDP ,Gopher , Whois dan lain -lain , karena open source maka kita dapat mempelajari semua kode program yang ada untuk dikembangkan . kemudahan yang lain adalah indy mendukung protocol sampai 120 protokol , sebelumya protocol adalah aturan standar atau ketentuan dalam komunikasi jaringan , jadi dalam komunikasi jaringan sudah dibentuk aturan baku dalam proses data .

Untuk pemograman indy dapat menggunakan bahasa pemograman seperti Borland Delphi , Borland C++ builder , Visual Studio.net, C# , dan untuk platform ( berbeda system operasi ) dapat digunakan pula di Linux , .Net Framework, dan Win32.

Untuk selanjutnya penulis akan menjelaskan dengan membuat program telnet sederhana . penulis menggunakan bahasa pemograman Borland Delphi 7 dan komponen indy server ( IdTcpServer ) dan indy client ( IdTcpClient ) , penulis juga menggunakan dua form , yaitu form server dan form client . pertama adalah kita membuat perintah pada Form Client

2 / 11

Socket Programming Delphi


Ditulis oleh Idris Sabtu, 18 April 2009 09:10

Aplikasi Client

Pada Aplikasi Client dirancang untuk koneksi ke server , dibawah ini adalah baris untuk koneksi ke server Procedure Tmain Form.ButtonClick (Sender:TObject ); Begin

With IdtcpClient1 do

Begin

Host:=edit1.text // masukan ip address

Port:= 3122;

connect;

end;

Untuk lebih memudahkan , maka pada saat client terhubung dengan server , di buat sebuah pesan ke client , untuk memastikan client terhubung dengan server , kode program tersebut dapat dilihat di bawah ini

3 / 11

Socket Programming Delphi


Ditulis oleh Idris Sabtu, 18 April 2009 09:10

Procedure TForm1.TCPClient1Connected(Sender: TObject);

begin

memo1.Lines.Insert(0,'koneksi terhubung ke server ' + edit1.Text);

//sebuah pesan di memo yang menyatakan bahwa client telah //terhubung ke erver

end;

Dari baris diatas dapat dilihat pernyataan koneksi terhubung ke server edit1.text menyatakan nama IP Address server .

Kita juga harus menutup koneksi ke server , apabila kita sudah tidak ingin menggunakan program tersebut dan ingin keluar , aplikasi client harus secara otomatis ( istilah computer disconnect ) dari server , baris perintah tersebut dapat dilihat pada kode program di bawah ini

procedure TForm1.BitBtn1Click(Sender: TObject);

begin

if tcpclient1.Connected then tcpclient1.Disconnect;

4 / 11

Socket Programming Delphi


Ditulis oleh Idris Sabtu, 18 April 2009 09:10

end;

Selanjutnya yang terpenting adalah komunikasi client dengan server , karena aplikasi ini adalah telnet sederhana , maka client hanya dapat mengirim pesan atau data ke server , untuk pengembangan ke hal yang lain seperti gambar ataupun suara dapat mengunjungi situsnya di Http://www.nevrona.com/indy , baris ini adalah pengiriman text dari client ke aplikasi server .

Procedure Tmainform1.Buttonclick(Sender:Tobject );

Var pesan:string;

Begin

IdTcpClient1.Writeln(edit2.text); // pesan berasal dari input user

edit2.text:= // mengkosongkan edit2 supaya dapat di isi kembali

IdTcpClient1.readln(pesan);

memo1.lines.insert(0,pesan);

5 / 11

Socket Programming Delphi


Ditulis oleh Idris Sabtu, 18 April 2009 09:10

end;

Aplikasi Server

Setelah membuat aplikasi client ,saatnya di buat aplikasi server , untuk aplikasi server komponen yang diperlukan adalah IdTcpServer , yang digunakan untuk mengaktifkan server yang merupakan perpaduan antaa Ip Address dan port number .

Penulis menggunakan port number 3122 , jadi jika aplikasi ini dijalankan , maka gabungan nya adalah IP Address server dan 3122, contoh IP Address yang digunakan : 127.0.0.1 dan port number yang digunakan 3122 , ini artinya adalah computer dengan alamat : 127.0.0.1 membuka layanan servis telnet dengan port number : 3122

Baris perintah untuk mengaktifkan server , terdapat pada baris dibawah ini

Procedure Tform1.create ( Sender:TObject ) var

Bindings: TIdSocketHandles;

6 / 11

Socket Programming Delphi


Ditulis oleh Idris Sabtu, 18 April 2009 09:10

begin

//setup and start TCPServer

Bindings := TIdSocketHandles.Create(TCPServer);

try

with Bindings.Add do

begin

IP := 127.0.0.1;

Port := 3122;

end;

Try IdTCPServer.Bindings := Bindings;

7 / 11

Socket Programming Delphi


Ditulis oleh Idris Sabtu, 18 April 2009 09:10

IdTCPServer.Active := True;

except on E:Exception do

ShowMessage(E.Message);

end;

finally

Bindings.Free;

end;

//setup TCPServer

8 / 11

Socket Programming Delphi


Ditulis oleh Idris Sabtu, 18 April 2009 09:10

Baris diatas akan mengaktifkan server telnet dengan membuka port 3122 , selanjutnya adalah saat ada koneksi atau hubungan dari client , maka server akan memberikan sebuah pernyataan atau ucapan selamat datang ke client, pernyataan tersebut dapat dibuat sesuka hati . contoh pernyataan selamat datang server .

Procedure TForm1.IdtTpserver1Connect ( Athread :TIdPeerThread )

Begin

With AThread.Connection do

Begin

Writeln ( Selamat Datang di Server Ku );

Writeln ( Percobaan dengan Komponen Indy );

Writeln( ========================= );

end;

End;

9 / 11

Socket Programming Delphi


Ditulis oleh Idris Sabtu, 18 April 2009 09:10

Selanjutnya adalah balasan server ketika ada pesan atau message dari client , untuk memastikan bahwa client mengirimkan data , kode programnya dapat dilihati dibawah ini

Procedure Tform1.IdTcpServerExecute( Athread:TidPeerThread);

Var Pesan:string;

Begin

While Athread.Connection.Connected do

Begin

Pesan:=athread.Connection.readln;

//membaca data yang dikirim oleh Client , disimpan di

//variable pesan

10 / 11

Socket Programming Delphi


Ditulis oleh Idris Sabtu, 18 April 2009 09:10

//mengirimkan data ke client

athreaad.connection.writeln( OK + pesan);

end;

end.

11 / 11

Anda mungkin juga menyukai