Delhi Chat Programı

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Acem0x0
Üye
Mesajlar: 16
Kayıt: 27 Eki 2014 10:56
Konum: İzmir

Delhi Chat Programı

Mesaj gönderen Acem0x0 »

Merhabalar bu seferde farklı bir program üzerinde çalışıyorum ama bu seferki biraz zor bir proje aşşağıda olması gerekenleri yazıcam biraz yardımcı olursanız sevinirim .


Yapmak İstediğim Program Bir Chat Programı Whatssapp bu programı çoğumuz kullanıyoruz bu tarz bir chat programı olsun istiyorum yane client server şeklinde değil bunun için gerekenler ;

(Program Telefonlar İçin !)

1)Program açıldığında o kişiye belirli bir ip numarası verecek ve bu numara sabit kalacak
2)Mesaj göndermek istediğim kişiyi seçebilicez
3)Client server olayı nasıl olucak onu anlamadım yane 2 tarafta bilgi gönderip alabilecek

Aklıma gelenler bu kadar ekleyebilirsiniz yardımcı olursanız sevinirim.

Kod: Tümünü seç

Turn off the system
[/u][/b]
thelvaci
Kıdemli Üye
Mesajlar: 770
Kayıt: 11 Tem 2010 07:17
Konum: Istanbul
İletişim:

Re: Delhi Chat Programı

Mesaj gönderen thelvaci »

Kod: Tümünü seç

program pTavsiye;

{$APPTYPE CONSOLE}

{$R *.res}

uses
  System.SysUtils;

type
  TConverter = record
  public
    class function IsEqual(const Value1 : TBytes; const Value2 : TBytes) : Boolean; static;
  end;

var
  YourStatus : TBytes;
  YourMessage: String = '';

{ TConverter }

class function TConverter.IsEqual(const Value1 : TBytes; const Value2 : TBytes) : Boolean;
var
  N           : Integer;

  PLen        : PInteger;
  Size        : Integer;
begin
  N := 0;

  PLen := @Value1[0];
  Dec(PLen);
  Size := PLen^;

  while (N < Size) and (TBytes(Value1)[N] = TBytes(Value2)[N]) do Inc(N);

  Result := N = Size;
end;


var
  cStatus,
  cMessage  : TBytes;

  pCurrent,
  pLast     : PByte;
begin
  try
    cStatus := TBytes.Create($41, $43, $45, $4d, $49);
    cMessage:= TBytes.Create($4f, $4e, $43, $45, $20, $4f, $47, $52, $45, $4e, $20, $53, $4f, $4e, $52, $41, $20, $4b, $4f, $44, $4c, $41);

    YourStatus := TEncoding.ASCII.GetBytes('ACEMI');

    if TConverter.IsEqual(YourStatus, cStatus) then
    begin
      pCurrent := @cMessage[Low(cMessage)];
      pLast    := @cMessage[High(cMessage)];

      while pCurrent <= pLast do
      begin
        YourMessage := YourMessage + Chr(pCurrent^);

        Inc(pCurrent);
      end;

      Writeln(YourMessage);
      Readln;
    end;
  except
    on E: Exception do
      Writeln(E.ClassName, ': ', E.Message);
  end;
end.
Kullanıcı avatarı
SimaWB
Üye
Mesajlar: 1316
Kayıt: 07 May 2009 10:42
Konum: İstanbul
İletişim:

Re: Delhi Chat Programı

Mesaj gönderen SimaWB »

+1
Bence gerçekten arkadaşın işine yarayacak bir örnek olmuş :)
There's no place like 127.0.0.1
Acem0x0
Üye
Mesajlar: 16
Kayıt: 27 Eki 2014 10:56
Konum: İzmir

Re: Delhi Chat Programı

Mesaj gönderen Acem0x0 »

Tamamda bu kodların açıklaması nerde ? böyle direk kod vermesi iyi ama açıklamasını yapsaydın keşke

Kod: Tümünü seç

Turn off the system
[/u][/b]
thelvaci
Kıdemli Üye
Mesajlar: 770
Kayıt: 11 Tem 2010 07:17
Konum: Istanbul
İletişim:

Re: Delhi Chat Programı

Mesaj gönderen thelvaci »

Acem0x0 yazdı:Tamamda bu kodların açıklaması nerde ? böyle direk kod vermesi iyi ama açıklamasını yapsaydın keşke
Bende tam olarak bunu kastetmiştim güzel kardeşim :)
Cevapla