İnternet bileşenleriyle chat programı

Yazdığınız makaleleri ve üyelerimizin işine yarayacağını düşündüğünüz kodlarınızı gönderebilirsiniz. Bu foruma soru sormayın!
Cevapla
Kullanıcı avatarı
Fatih!
Kıdemli Üye
Mesajlar: 1172
Kayıt: 26 Kas 2004 10:46
Konum: Malatya
İletişim:

İnternet bileşenleriyle chat programı

Mesaj gönderen Fatih! »

Gönderen: xbarakuda
İnternet bileşenleri TSERVERSOCKET VE TCLİENTSOCKET
bu bileşenler internet tabında yer almaktadır
Ama direk kurulu olarak gelmez kurmak için component intsall packages tıklayın gelen menude add diyin bin dosyasına gelin ve dclsockets70.bpl paketini secin bukadar
Bileşenler internet tabına yerleşmiş olacaktır
Bu bileşenleri daha iyi anlamanız için bir örnek yaptım hem server hem client daha doğrusu çok önçe yapmıştım ama size örnek olsun
Not : programı çalıştırdıktan sonra bir port kaydetmiyi untmayın size bağlanmak istiyen portu bilmeli artık geliştirmek size kalmış internet üzerinden denedim çalışıyor

Kod: Tümünü seç

procedure TForm1.Image4Click(Sender: TObject);
begin
form2.Show;
end;

procedure TForm1.YARDIM1Click(Sender: TObject);
begin
form3.show;
end;

procedure TForm1.Image6Click(Sender: TObject);
begin
if fontdialog1.Execute then
mesaj.Font:=fontdialog1.Font;
memo1.Font:=fontdialog1.Font;
end;

procedure TForm1.KAPAT1Click(Sender: TObject);
begin
form1.Close;
end;

procedure TForm1.BitBtn1Click(Sender: TObject);
var
  Address: string;
begin

  if not ClientSocket1.Active then
  begin
    ClientSocket1.Host := '';
    ClientSocket1.Address := '';
    Address := edit1.Text;
    if inet_addr(PChar(Address)) = INADDR_NONE then
      ClientSocket1.Host := Address
    else
      ClientSocket1.Address := Address;
    ClientSocket1.Port := spiPort.Value;
  end;
  ClientSocket1.Active := not ClientSocket1.Active;
end;

procedure TForm1.BitBtn2Click(Sender: TObject);
begin
if clientsocket1.Active then
clientsocket1.Socket.SendText('kulanıcı1::'+ mesaj.Text);
 memo1.Lines.Add(mesaj.Text);
mesaj.Clear;

end;

procedure TForm1.ClientSocket1Disconnect(Sender: TObject;
  Socket: TCustomWinSocket);
begin
memo1.Lines.Text:='bağlantı koptu';
end;

procedure TForm1.ClientSocket1Connect(Sender: TObject;
  Socket: TCustomWinSocket);
begin
memo1.Lines.Text:='bağlantı saglandı';
end;

procedure TForm1.ClientSocket1Connecting(Sender: TObject;
  Socket: TCustomWinSocket);
begin
memo1.Lines.Text:='bağlanıyor';
end;

procedure TForm1.ClientSocket1Error(Sender: TObject;
  Socket: TCustomWinSocket; ErrorEvent: TErrorEvent;
  var ErrorCode: Integer);
begin
memo1.Lines.Text:='bir hata oluştu';
end;

procedure TForm1.ServerSocket1ClientRead(Sender: TObject;
  Socket: TCustomWinSocket);
begin
memo1.Lines.Add(socket.ReceiveText);
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
serversocket1.Active:=false;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
button2.Show;
  button1.Enabled:=false;
  if ServerSocket1.Active then
  begin
    ServerSocket1.Close;
    memo1.Lines.Text:='baglantı koptu';

    Exit;
  end;
  ServerSocket1.Port := spinedit2.Value;
  ServerSocket1.Open;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
button2.Hide;
timer1.Interval:=100;
timer1.Enabled:=true;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
var
x:integer;
begin
x:=form1.Height;
form1.Height:=x+13;
 if x>550 then
 timer1.Enabled:=false;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
button1.Enabled:=true;
button2.Hide;
serversocket1.Active:=false;
end;

procedure TForm1.mesajKeyPress(Sender: TObject; var Key: Char);
begin
if Key=#13 then
  bitbtn2Click(Sender);
end;

procedure TForm1.ServerSocket1Accept(Sender: TObject;
  Socket: TCustomWinSocket);
begin
memo1.Lines.Add(socket.RemoteAddress+'bağlandı');

end;

end.

indirmek için tıklyın
En son Fatih! tarafından 24 Nis 2006 12:42 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
Kullanıcı avatarı
ender_arslanturk
Kıdemli Üye
Mesajlar: 709
Kayıt: 18 Şub 2005 03:38
Konum: İstanbul

Mesaj gönderen ender_arslanturk »

Merhaba Programı indiremedim acaba bir sorunmu var ?
Kullanıcı avatarı
Fatih!
Kıdemli Üye
Mesajlar: 1172
Kayıt: 26 Kas 2004 10:46
Konum: Malatya
İletişim:

Mesaj gönderen Fatih! »

kusura bakma kazara hostingden silmişim sanırım. :roll:
düzelttim.
kolay gelsin
Kullanıcı avatarı
ender_arslanturk
Kıdemli Üye
Mesajlar: 709
Kayıt: 18 Şub 2005 03:38
Konum: İstanbul

Mesaj gönderen ender_arslanturk »

Teşekkür ederim indirdim.

chat olarak arama yaptım ama ben acaba msn messenger gibi chat yapabilirmiyim :?: Aslında hazır örnek varmı bu konuda geliştirebileceğim....
Kullanıcı avatarı
Fatih!
Kıdemli Üye
Mesajlar: 1172
Kayıt: 26 Kas 2004 10:46
Konum: Malatya
İletişim:

Mesaj gönderen Fatih! »

@xbarakuda'da vardı ama kodları vereceğini sanmam
sako
Üye
Mesajlar: 477
Kayıt: 11 Haz 2003 02:40
Konum: ERZURUM

Mesaj gönderen sako »

Programı bende indiremedim. sadece web sayfası açılıyor...
DOĞUNUN SINIR TAŞI ERZURUM'UN DADAŞ'I
EFE'Sİ VAR İZMİR'İN EĞİLMEZ TÜRK' ÜN BAŞI
Cevapla