OVH Cloud OVH Cloud

Remoting

7 réponses
Avatar
FRANCOIS Philippe
Bonjour,

J'ai une application WinForm de consultation de documents numérisés par
saisie de N° de dossier.

J'aimerai à partir d'une autre application, "piloter" l'application de
consultation et y faire afficher les documents d'un dossier
automatiquement "comme si" l'utilisateur avait demandé les documents de
ce dossier.

Je pensais au départ utiliser le remoting mais plus j'avance et plus je
me dit que ce n'est pas la bonne voie.


Il y aurait-il un moyen de faire de la communication inter-application
et passer simplement dans ce cas l'information du N° de dossier) ?


D'avance merci de vos pistes.


PS : en vb6 pour arriver à ce résultat, l'application de consultation
était un Exe ActiveX.



--
Philippe FRANCOIS

7 réponses

Avatar
Paul Bacelar
Le plus simple est de diviser votre application de visualisation en 2
parties.

Un assembly métier contiendra les classes communes à l'application de
visualisation autonome et à l'autre programme.

Un assembly ne contenant que les classes nécessaires à la création d'un
exécutable autonome et référençant le premier assembly.



L'autre programme utilisera directement l'assembly métier.
--
Paul Bacelar



"FRANCOIS Philippe" wrote in message
news:
Bonjour,

J'ai une application WinForm de consultation de documents numérisés par
saisie de N° de dossier.

J'aimerai à partir d'une autre application, "piloter" l'application de
consultation et y faire afficher les documents d'un dossier
automatiquement "comme si" l'utilisateur avait demandé les documents de
ce dossier.

Je pensais au départ utiliser le remoting mais plus j'avance et plus je
me dit que ce n'est pas la bonne voie.


Il y aurait-il un moyen de faire de la communication inter-application
et passer simplement dans ce cas l'information du N° de dossier) ?


D'avance merci de vos pistes.


PS : en vb6 pour arriver à ce résultat, l'application de consultation
était un Exe ActiveX.



--
Philippe FRANCOIS




Avatar
Michael Moreno
Bonjour,

Si j'ai bien compris :
Application A doit pouvoir avoir l'interface Graphique (et non pas
seulement ses classes) pilotee par Application B.

Evidemment avec COM tout cela etait "assez" facile et maintenant sous
.Net c'est devenu vraiment penible a faire...

Premier choix : ne pas utiliser .Net. Beaucoup de gens continuent
d'ecrire des serveurs COM en C++, Delphi, VB.
Deuxieme choix : Utiliser le Remoting. Je m'en sers et je trouve cela
fort penible par rapport a COM mais ca marche.
Troisieme choix : Envoyer des Messages (PostMessage / SendMessage)
entre les deux applis. Il faut que les appli soient sur la meme machine
Quatrieme choix : Utiliser un serveur COM central pour les messages. Je
m'explique. L'Application A se connecte a un serveur COM C.
L'application B se connecte au meme serveur COM C. B communique avec A
au travers de C. C'est une solution tres facile a mettre en oeuvre
grace a "Interop".
Cinquieme choix : Utiliser un serveur de messagerie tel que MSMQ.
Attention le Framework 1.1 gere assez mal MSMQ par rapport aux classes
COM MSMQ existantes. Mais la encore ca marche.

--
Michael
----
http://michael.moreno.free.fr/
http://port.cogolin.free.fr/
Avatar
FRANCOIS Philippe
Bonjour,

Michael Moreno avait énoncé :
Bonjour,

Si j'ai bien compris :
Application A doit pouvoir avoir l'interface Graphique (et non pas
seulement ses classes) pilotee par Application B.




Vous avez tout à fait compris le problème !


Evidemment avec COM tout cela etait "assez" facile et maintenant sous .Net
c'est devenu vraiment penible a faire...

Deuxieme choix : Utiliser le Remoting. Je m'en sers et je trouve cela fort
penible par rapport a COM mais ca marche.



Je n'ai pas l'impression que cela soit possible dans ce cas :
le client ne peut pas récupérer une instance d'un objet créé par le
serveur n'est ce pas ?

Troisieme choix : Envoyer des Messages (PostMessage / SendMessage) entre les
deux applis. Il faut que les appli soient sur la meme machine



Je vais essayer d'explorer cette solution (les 2 aplli sont sur la même
machine)

Quatrieme choix : Utiliser un serveur COM central pour les messages. Je
m'explique. L'Application A se connecte a un serveur COM C. L'application B
se connecte au meme serveur COM C. B communique avec A au travers de C. C'est
une solution tres facile a mettre en oeuvre grace a "Interop".
Cinquieme choix : Utiliser un serveur de messagerie tel que MSMQ. Attention
le Framework 1.1 gere assez mal MSMQ par rapport aux classes COM MSMQ
existantes. Mais la encore ca marche.



Merci encore de ces pistes à explorer

--
Philippe FRANCOIS
Avatar
Michael Moreno
> Je n'ai pas l'impression que cela soit possible dans ce cas :
le client ne peut pas récupérer une instance d'un objet créé par le serveur
n'est ce pas ?



C'est possible. Regardez du cote de Server Activated Object

--
Michael
----
http://michael.moreno.free.fr/
http://port.cogolin.free.fr/
Avatar
FRANCOIS Philippe
>> Je n'ai pas l'impression que cela soit possible dans ce cas :
le client ne peut pas récupérer une instance d'un objet créé par le serveur
n'est ce pas ?



C'est possible. Regardez du cote de Server Activated Object



Bonjour,

Je cherche, je cherche mais je ne trouve pas !!!

J'aimerais pouvoir récupérer l'instance le l'objet form du programme
serveur depuis le client : est-ce vraiment possible ?

Merci

--
Philippe FRANCOIS
Avatar
Michael Moreno
> Je cherche, je cherche mais je ne trouve pas !!!



Je n'aurai jamais pu vraiment m'en sortir sans "Advanced .Net Remoting"
(second edition) Ingo Rammer et Mario Szpuszta - APress

J'aimerais pouvoir récupérer l'instance le l'objet form du programme serveur
depuis le client : est-ce vraiment possible ?



p32 de ce livre...

When you want to publish a certain object instance that's been
precreated on the server....
et ils disent d'utiliser: RemotingServices.Marshal(obj, "URL");

Si vous comprenez l'anglais et devait faire du remoting c'est a mes
yeux un excellent livre.

--
Michael
----
http://michael.moreno.free.fr/
http://port.cogolin.free.fr/
Avatar
FRANCOIS Philippe
Michael Moreno avait énoncé :
Je n'aurai jamais pu vraiment m'en sortir sans "Advanced .Net Remoting"
(second edition) Ingo Rammer et Mario Szpuszta - APress

Si vous comprenez l'anglais et devait faire du remoting c'est a mes yeux un
excellent livre.



Merci, je le commande !

--
Philippe FRANCOIS