Bonsoir à tous?
Je suis un apprenti de Delphi 7, J'ai un grand problème sur le socket Delphi 7
j'ai pu créer ma propre tchatch dans ma machine et ça marche très bien sur Windows 7 de ma machine vers une autre machine distant wifi local, mais j'ai voulu essayé d’améliorer l’application comme j'ai le cite en bas mais ça ne marche pas du tout.
Voilà ce que j'ai voulais ajouté à mon application.
1-Dans le formulaire client je veut avoir deux(2) edit text puis envoyé les differents saisies dans ce deux edit text dans le formulaire serveur. c'est à dire j'ai 2 edittext dans form Client et 2 edittext dans form Serveur. Pour mon application quand j'ai click le bouton envoyer dans form client les données des 2 edittext dans form Client sont bien envoyés dans le serveur mais elles sont tous mis(concatener) dans un seul edittext du Formulaire serveur et l'autre edittext du serveur reste vide. Ma question est,comment résoudre ce problème pour que les 2 edittext du serveur reçoivent les données saisies dans les 2 edittext dans le formulaire client?

Codes coté Client Socket

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
 
//Bouton Connecté
procedure TForm1.Button1Click(Sender: TObject);
begin
ClientSocket1.Port:=StrToInt(Edit1.Text);
ClientSocket1.Host:=Edit2.Text;
ClientSocket1.Open;
end;
 
//Bouton Deconnecté
procedure TForm1.Button2Click(Sender: TObject);
begin
ClientSocket1.Close;
end;
 
//Bouton envoyé
procedure TForm1.Button3Click(Sender: TObject);
begin
ClientSocket1.Socket.SendText(Edit3.Text);
ClientSocket1.Socket.SendText(Edit4.Text);
Memo1.Lines.Add('Messages envoyés au serveur');
end;
 
//Configuration du ClientSocket1
procedure TForm1.ClientSocket1Connect(Sender: TObject;
  Socket: TCustomWinSocket);
begin
   Memo1.Lines.Add('Connecté a '+Socket.RemoteHost);
end;
 
procedure TForm1.ClientSocket1Connecting(Sender: TObject;
  Socket: TCustomWinSocket);
begin
Memo1.Lines.Add('Serveur à été retrouvé');
end;
 
procedure TForm1.ClientSocket1Disconnect(Sender: TObject;
  Socket: TCustomWinSocket);
begin
Memo1.Lines.Add('Deconnecté');
end;
 
procedure TForm1.ClientSocket1Error(Sender: TObject;
  Socket: TCustomWinSocket; ErrorEvent: TErrorEvent;
  var ErrorCode: Integer);
begin
  if ErrorEvent=eeGeneral then
  Memo1.Lines.Add('Erreur inattendu');
  if ErrorEvent=eeSend then
  Memo1.Lines.Add('Erreur d''écriture sur la connection serveur');
  if ErrorEvent=eeReceive then
  Memo1.Lines.Add('Erreur de lecture sur la connection serveur');
  if ErrorEvent=eeConnect then
   Memo1.Lines.Add('Une demande de connexion dejà accepté mais n''a pas pu être achévé');
  if ErrorEvent=eeDisconnect then
    Memo1.Lines.Add('Erreur sur la fermeture  connection');
   if ErrorEvent=eeAccept then
   Memo1.Lines.Add('Erreur d''acceptation d''une connection client');
end;
Codes coté Serveur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
 
   //Bouton  Connecté
procedure TForm1.Button1Click(Sender: TObject);
begin
ServerSocket1.Port:=StrToInt(Edit1.Text);
ServerSocket1.Open;
end;
 
//Bouton Deconnecté
procedure TForm1.Button2Click(Sender: TObject);
begin
ServerSocket1.Close;
Memo1.lines.Add('Serveur deconnecté');
end;
 
//Configuration ServerSocket1
procedure TForm1.ServerSocket1ClientRead(Sender: TObject;
  Socket: TCustomWinSocket);
begin
Memo1.Lines.Add('Informations reçus');
Edit2.Text:=Socket.ReceiveText;
Edit3.Text:=Socket.ReceiveText;
end;
 
procedure TForm1.ServerSocket1Accept(Sender: TObject;
  Socket: TCustomWinSocket);
begin
Memo1.Lines.Add('Connecté à '+Socket.RemoteAddress);
end;
 
procedure TForm1.ServerSocket1ClientConnect(Sender: TObject;
  Socket: TCustomWinSocket);
begin
     memo1.Lines.Add('Connexion accepté par le serveur');
end;
 
procedure TForm1.ServerSocket1ClientDisconnect(Sender: TObject;
  Socket: TCustomWinSocket);
begin
memo1.Lines.Add('Client deconnecté');
end;
 
procedure TForm1.ServerSocket1ClientError(Sender: TObject;
  Socket: TCustomWinSocket; ErrorEvent: TErrorEvent;
  var ErrorCode: Integer);
begin
if ErrorEvent=eeGeneral then
  Memo1.Lines.Add('Erreur inattendu');
  if ErrorEvent=eeSend then
  Memo1.Lines.Add('Erreur d''écriture sur la connection serveur');
  if ErrorEvent=eeReceive then
  Memo1.Lines.Add('Erreur de lecture sur la connection serveur');
  if ErrorEvent=eeConnect then
   Memo1.Lines.Add('Une demande de connexion dejà accepté mais n''a pas pu être achévé');
  if ErrorEvent=eeDisconnect then
    Memo1.Lines.Add('Erreur sur la fermeture  connection');
   if ErrorEvent=eeAccept then
   Memo1.Lines.Add('Erreur d''acceptation d''une connection client');
end;
2- Comment faire? lorsque j'ai souhaite avoir une base de données liée dans le formulaire serveur et que la saisi (le remplissage) de cette base de données se fait à partir de la formulaire client
3-Comment faire pour que n> 2 clients peuvent tchatcher simultanément puis les identifiés dans le serveur lorsqu’ils sont connecté
Merci pour tous de vos réponses favorables car cela me permettra d'avancer