var
Form1: TForm1;
Anmeldung:
string;
NachrichtvonServer:
string;
Nachrichtanserver:
string;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
// Das ist der Anmeldestring damit der IRCserver weiß wer du bist
// sonst schmeißt er uns wieder raus
Anmeldung:='
USER delphipraxis123 "" "localhost" :delphipraxis123'+char(13)+'
NICK delphipraxis'+char(13);
{
Das Char(13) ist der Druck auf die Entertaste das must du mitsenden.
Das verlangt das IRC-Protokoll.
Ansonsten versteht dich der IRC server nicht.
}
edit1.Clear;
memo1.Clear;
end;
// Verbindung aufbauen
procedure TForm1.Button1Click(Sender: TObject);
begin
if clientsocket1.Active=false
then
begin
clientsocket1.Host:='
ircchat.freenet.de';
//Chatserver
clientsocket1.Port:=6667;
//Port
clientsocket1.Active := true;
//Verbindung öffnen
end;
end;
//sende Anmeldestring wenn Verbindung aufgebaut, an IRC server senden.
procedure TForm1.ClientSocket1Connect(Sender: TObject;
Socket: TCustomWinSocket);
begin
// den Anmeldestring senden
clientsocket1.Socket.SendText(anmeldung);
end;
//Nachricht empfangen
procedure TForm1.ClientSocket1Read(Sender: TObject;
Socket: TCustomWinSocket);
begin
//Nachricht aus dem Socket lesen ,also das was vom Server kommt
Nachrichtvonserver:= clientsocket1.Socket.ReceiveText;
Memo1.Lines.Add(Nachrichtvonserver);
end;
// Text verschicken
procedure TForm1.Button2Click(Sender: TObject);
begin
// Text in die Variable Entertaste simulieren ;)
Nachrichtanserver:=edit1.Text+char(13);
edit1.Clear;
// eigene Nachricht anzeigen
Memo1.Lines.Add(Nachrichtanserver);
// Text verschicken
if clientsocket1.Active=true
then
begin
clientsocket1.Socket.SendText(Nachrichtanserver) ;
end;
end;
// Verbindung trennen
procedure TForm1.Button3Click(Sender: TObject);
begin
clientsocket1.Active:=false;
end;
end.