Bonjour à toutes et à tous,
Pour faire suite à cette discussion, je veux échanger entre deux applications graphiques en utilisant les composants "SimpleIPC Server et Client".
J'ai réussi à faire cet échange si je lance séparément chacune des applications A et B.
Maintenant, l'application A qui doit recevoir des données de B lance l'application B via un TProcess. Et bien, cela ne fonctionne plus.
L'application A (Le serveur est lancé dans le Create):
L'application B :
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 procedure TFntrBase.SimpleIPCServerMessage(Sender: TObject); var s: String; begin s:= SimpleIPCServer.StringMessage; // Réception du message de B end; procedure TFntrBase.ScruteClickTimer(Sender: TObject); var Proc: TProcess; begin ... begin try Proc := TProcess.Create(nil); Proc.Options:= Proc.Options+[poWaitOnExit]; Proc.Executable := 'C:\lazarus124\Projets_ChP\ConcatMap\CoordPoint\CoordPoint.exe'; // L'application B Proc.Execute(); finally Proc.Destroy; end; end; end;
Une idée du pourquoi du comment ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 procedure TForm1.ValiderClick(Sender: TObject); begin with SimpleIPCClient do begin Connect; SimpleIPCClient.SendStringMessage(FloatToStr(Lat)+';'+ FloatToStr(Lon)); DisConnect; end; Application.Terminate; end;
Cordialement.
Pierre
Partager