Précédent   Forum du club des développeurs et IT Pro > Environnements de développement > Delphi > Composants VCL
Composants VCL Utilisation des différents composants VCL (Visual Component Library)
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 12/10/2012, 09h06   #1
Thryfto
Invité régulier
 
Homme Matthias HUC
Apprentie Ingé
Inscription : septembre 2012
Messages : 21
Détails du profil
Informations personnelles :
Nom : Homme Matthias HUC
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Apprentie Ingé
Secteur : High Tech - Électronique et micro-électronique

Informations forums :
Inscription : septembre 2012
Messages : 21
Points : 7
Points : 7
Par défaut Evénement RxChar non accéssible

Bonjours,
J'ai actuellement deux applications placé sur deux PC différents, une sur le premier PC qui récupère une donnée à partir d'un lecteur de code barre (COM6) et qui renvoi cette donnée sur deux autres ports (COM4/5) et l'autre application placée sur le second PC qui récupère les données recu sur les deux ports (COM1/2). Les Ports COM4/5(PC1) et COM1/2(PC2) sont relié avec un câble RS232.

J'utilise donc le composant Comport pour gérer mes transferts.

Mon code :
Code :
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
procedure TForm1.ComPort1RxChar(Sender: TObject; Count: Integer);
  var   chaine : string;
Begin
  //Passe la variable AfficheCOM1 à vrai pour permettre l'affichage
  AfficheCOM := True;
  //Lecture du port comport1 pour la reception de donnée
  ComPort1.ReadStr(Chaine,Count);
  //Clear du mémo pour éviter la saturation en donnée
  Memo1.Lines.clear;
  //Affiche la donnée reçu en COM d'entrée
  if AfficheCOM then Memo1.Lines.Text := Memo1.Lines.Text +Comport1.port+', reçu : '+Chaine+#13#10;
  //Envoi/Ecris la donnée sur un COM de sortie
  ComPort2.WriteStr(Chaine+#13#10);
  //Envoi/Ecris la donnée sur un COM de sortie
  ComPort3.WriteStr(Chaine+#13#10);
  //Affiche la donnée reçu en COM de sortie
  if AfficheCOM then Memo1.Lines.Text := Memo1.Lines.Text +Comport2.port+', envoyé : '+Chaine+#13#10;
  //Affiche la donnée reçu en COM de sortie
  if AfficheCOM then Memo1.Lines.Text := Memo1.Lines.Text +Comport3.port+', envoyé : '+Chaine+#13#10;
end;
 
procedure TForm1.ComPort2RxChar(Sender: TObject; Count: Integer);
  Var Chaine:String;
begin
  //Lis la donnée présente sur le Port comport2
  ComPort2.ReadStr(Chaine,Count);
  //Ecris dans le memo, la donnée présente sur le Port comport2
  Memo1.Lines.Text := Memo1.Lines.Text +Comport2.port+', reçu : '+Chaine;
end;
 
procedure TForm1.ComPort3RxChar(Sender: TObject; Count: Integer);
  Var Chaine:String;
begin
  //Lis la donnée présente sur le Port comport3
  ComPort3.ReadStr(Chaine,Count);
  //Ecris dans le memo, la donnée présente sur le Port comport3
  Memo1.Lines.Text := Memo1.Lines.Text +Comport3.port+', reçu : '+Chaine;
end;
Mon problème est que j’accède bien a ma procédure TForm1.ComPort1RxChar mais pas aux deux autres ComPortRxChar.
Je réceptionne bien ma donnée sur mon autres PC donc mes comport1/2/3 sont actif et fonctionnels.
Auriez vous une idée d'où viendrait le fait que c'est procédure ne s'active pas ?
Thryfto est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Cette discussion est résolue.
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 09h22.


 
 
 
 
Partenaires

Hébergement Web