sebagai contoh mari kita buat aplikasi sederhana ! Install dulu komponen TserverSocket dan TserverClient (kalau pake Delphi 7) melalui menu component kemudian install packages, browse sumber dari : C:\Program Files\Borland\Delphi7\Bin\dclsockets70.bpl, add dan install komponen tersebut. Secara default akan bernaung di tab internet pada IDE Delphi anda.
YugiMage@gmail.com
Untuk percobaan kita bisa menggunakan pada jaringan localhost (192.168.1.1) yah kalau mau coba silahkan pake 2 komputer atau lebih. Buka project baru kemudian save dengan nama SERVER Pada form anda isikan beberapa komponen 1 ServerSocket, 1 Label, 1 ListBox dan 2 Button. Kemudian set atribut-atribut tersebut sehingga menyerupai bentuk form di bawah ini :
Ubah property port pada component ServerSocket1 = 1024, biarkan atribut active=false active kan component ServerSocket1 sewaktu event OnCreate pada form anda : OnCreate
YugiMage@gmail.com
ServerSocket1.Active:=true; mari kita tambahkan beberapa script pada event ServerSocket1 OnClientError : ErrorCode:=0; Ok, yang perlu diketahui disini bahwa respon dari server tergantung dari text yang dikirim oleh client (aturan command disini dibuat oleh pembuat program) aturan cmdReceive : 1. command dipisah dengan karakter at atau tanda @" 2. selebihkan adalah tambahan aturan disini dibuat menggunakan array dalam class TstringList. contoh : cmdReceive.text=CON@tomx maka : cmdReceive[0]=CON cmdReceive[1]=tomx artinya : client terkoneksi dengan nama user tomx jika cmdReceive.text=DSC@tomx maka : cmdReceive[0]=DSC cmdReceive[1]=tomx artinya : client terputus terkoneksi dengan nama user tomx catatan : aturan ini dibuat oleh programmer. Isikan script berikut : procedure TForm1.ServerSocket1ClientRead(Sender: TObject; Socket: TCustomWinSocket); var cmdReceive: TStringList; begin cmdReceive:=TStringList.Create; cmdReceive.Delimiter:='@'; cmdReceive.DelimitedText:=Socket.ReceiveText; // ShowMessage(cmdReceive[0]+' '+cmdReceive[1]); if cmdReceive[0] = 'CON' then ListBox1.Items.Add(cmdReceive[1]) else if cmdReceive[0] = 'DSC' then //cari dan hapus user dari daftar client if SendMessage(ListBox1.Handle, lb_selectstring, -1, longint(PChar(cmdReceive[1])))<>LB_ERR then
YugiMage@gmail.com
ListBox1.Items.Delete(ListBox1.ItemIndex); end; save dan compile project server, kemudian buat project baru. Simpan dengan nama CLIENT. Pada client tambahkan komponen 1 ClientSocket, 1 EditText dan 2 Tombol. Atur property pada masing-masing komponen sehinggan bentuk nya sama seperti gambar berikut :
ubah property port pada component ClientSocket1 = 1024 dan address = 127.0.0.1, biarkan atribut active=false Kita ke event OnCreate pada form, kemudian isikan kode berikut : try ClientSocket1.Active:=true; except MessageDlg('Tidak dapat terkoneksi dengan server !',mtInformation,[mbOK],0); end; Event OnClick pada tombol connect : ClientSocket1.Socket.SendText('CON@'+Edit1.Text); Edit1.Enabled:=false; Button1.Enabled:=false; Button2.Enabled:=true; Event OnClick pada tombol connect : ClientSocket1.Socket.SendText('DSC@'+Edit1.Text); Edit1.Enabled:=not false; Button1.Enabled:=not false; Button2.Enabled:=not true; save dan compile program anda langkah terakhir adalah uji coba, dan berikut hasilnya (server dijalankan 1 kali, kemudian client 3 kali di eksekusi dengan nama client yang berbeda-beda)
YugiMage@gmail.com