Freigeben über


Pipe Properties

How can I find the pipe object on the system created by a named pipe binding?

The simplest way to find the named pipe is to use a tool like Process Explorer to examine your running executable. If you look inside a client or service that has the named pipe open, then you'll see a file handle that looks like this:

\Device\NamedPipe\f422aed9-6058-4bab-90b1-fe856bdcbd80

The unique identifier at the end will be different on your machine, and in fact, will be different every time you run the program. The named pipe handle may only exist while you've got the pipe open, so it's typically easier to find the pipe from the listener side than the client side.

If you're not sure that the named pipe you're looking at is the pipe created by WCF, then you can typically tell by the security properties since WCF has a particular configuration it uses. For a WCF named pipe, everyone will have permission to Synchronize, Query State, or Modify State on the pipe, while Network users will specifically be denied access to the pipe.

Next time: Avoiding Infinite Schema Chains

Comments

  • Anonymous
    August 25, 2008
    I frequently get asked how to add a header to every outgoing request so I wrote up a quick reusable approach.