views:

30

answers:

2

Hi all. I'm trying to use WCF named pipes in a web site, and it's failing with errors:

There was no endpoint listening at net.pipe://localhost/mypipename that could accept the message. This is often caused by an incorrect address or SOAP action. See InnerException, if present, for more details.

and the InnerException:

The pipe name could not be obtained for net.pipe://localhost/mypipename.

and there is another inner exception giving an access denied message.

My web site is using impersonation, and looking around the internet, this seems to be relevant, but I don't know how to fix it.

Does anyone have any ideas?

Thanks Matt

A: 

If you're getting this particular exception, it typically means that your service is not running. I see that you use localhost in the URL. I just want to make sure that the host and the service are running on the same machine. WCF does not allow communication across machines with this binding.

When I get this message, usually I check and see that I forgot to start the service, thus, there is no endpoint listening. Please check that your service is actually still running and hasn't crashed at the time that the exception is thrown. If that doesn't fix the problem, please post your progress and I can make more suggestions.

Rice Flour Cookies
A: 

I worked around the problem by making the IIS endpoint where I ended up calling the net pipe from available to anonymous users, which meant no impersonation.

citizenmatt