Échange entre deux applications graphiques
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):
Code:
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; |
L'application B :
Code:
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; |
Une idée du pourquoi du comment ?
Cordialement.
Pierre