Re: problem with pipes IPC

Tech-Archive recommends: Repair Windows Errors & Optimize Windows Performance



Named pipes are not part of the \Global namespace. They are in the
\\.\pipe\ namespace, and the rules about \Global do not apply.

Using procexp, you can see that the named pipe is found in
\device\namedpipe\pipenamehere

and that is a global space to the machine.

Note that pipe names cannot start with \Global; they must be \\.\pipe\pipenamehere

joe

On Wed, 25 Feb 2009 14:19:55 -0800, "David Ching" <dc@xxxxxxxxxxxxxxxxxxxxxx> wrote:

"Joseph M. Newcomer" <newcomer@xxxxxxxxxxxx> wrote in message
news:qmebq4l7uiusgn33oiccbip6v33893o42g@xxxxxxxxxx
Unfortunately, pipes don't work that way. Named pipes are by definition
always global and
visible to everyone who has access to the machine (whether or not remote
users can connect
is based on the security set, but that's a different issue). So you can't
create a "local
pipe" because the name is inherently global.

Mutexes exist in the local session namespace, and that is a completely
different
mechanism, not shared with named pipes.


With other objects like file mapping and mutex, if the name starts with
"Global\" it is visible across terminal sessions (as used with Fast User
Switch). Are you saying pipes, even those whose names don't start with
"Global\", are visible across terminal sessions already? I don't know named
pipes very well but would be surprised that they had a different behavior
than other objects such as file mapping and mutex.

Thanks,
David
Joseph M. Newcomer [MVP]
email: newcomer@xxxxxxxxxxxx
Web: http://www.flounder.com
MVP Tips: http://www.flounder.com/mvp_tips.htm
.



Relevant Pages

  • Re: Named Pipe Question
    ... why are named pipes associated with a file system object, ...
    (comp.unix.programmer)
  • Re: parenthetical grouping
    ... >> i've written a little c program, 'drain'. ... >> the program just copies from src to dst, except upon opening dst (and before ... > Why are you using named pipes and an unnamed pipe at the same time? ...
    (comp.unix.shell)
  • Re: C++ , Java Kommunikation
    ... ich habe zwei Programme, der eine in Java der andere in C++. ... die named pipes sind doch nur unter linux vorhanden. ...
    (de.comp.lang.java)
  • Re: Setting up ODBC
    ... I can ping the server without any problem using both the server name ... machine that is not connecting is setup exactly the same as a machine ... pipes I've search on the internet but all I can seem to find is info ... using named pipes it automanically generate the following pipe name: ...
    (microsoft.public.sqlserver.setup)