2009-10-13 7 views
2

Salut J'ai un problème avec le scénario suivant:WCF sur les canaux nommés

Un service Windows est en cours d'exécution qui engendre plusieurs processus. Ces processus ouvrent un hôte de service WCF sur une liaison de canal nommé. Maintenant, le service parent windows tente de ping (se connecter) aux processus enfants en utilisant le proxy wcf sur le canal nommé bien connu. Ceci, cependant, échoue en disant: "Endpoint not found"

Si j'exécute le processus parent en tant qu'application console, cela fonctionne correctement.

Des idées? Je pensais aux permissions mais les processus fils devraient hériter de l'autorisation du service, en plus ils sont dans la même session.

merci, Christoph

+0

sont tous ces processus enfants utilisant le même canal nommé? –

+0

Je demande depuis que vous dites "... sur le tuyau nommé bien connu" - semble presque que vous essayez d'utiliser un seul tuyau nommé pour plusieurs processus enfants –

+0

pouvez-vous nous montrer comment un tel processus enfant est créé, et comment il a créé son (ses) point (s) de finalité WCF? Comment le parent tente-t-il d'appeler les processus fils? –

Répondre

0

"Endpoint not found" pourrait être qu'il ne trouve pas le point final. Ou il se peut qu'il ne trouve pas la configuration pour le point de terminaison.

Ma meilleure estimation est qu'il vous manque la configuration côté client pour le point de terminaison.

+1

Dans le cas de NetNamedPipeBinding, "Endpoint not found" ne signifie pas nécessairement que le point de terminaison n'existe pas. La même erreur est visible si le point de terminaison existe mais que le processus client qui tente de communiquer avec lui n'a pas les droits de sécurité nécessaires pour voir l'objet de mémoire partagée utilisé par la pile côté serveur WCF pour publier le nom de canal actuellement utilisé. Voir les détails à http://blogs.charteris.com/blogs/chrisdi/archive/2008/05/19/exploring-the-wcf-named-pipe-binding-part-1.aspx etc. –

0

Je n'ai pas de solution, mais le problème est que le service s'exécute avec des privilèges élevés, et par conséquent le client doit également être élevé.