System.Core 4.0.0.0 System.IO.Pipes.PipeStream System.MonoTODO("working only on win32 right now")

Named pipes provide one-way or duplex pipes for communication between a pipe server and one or more pipe clients. Named pipes can be used for interprocess communication locally or over a network. A single pipe name can be shared by multiple objects.

Any process can act as either a named pipe server or client, or both.

For winxppro and win2kserver, a maximum of 10 pipes can simultaneously connect over the network.

Exposes a around a named pipe, supporting both synchronous and asynchronous read and write operations.

- Constructor
  4.0.0.0

  This constructor creates a object that has the following characteristics:

  A default pipe direction of .

  The maximum number of server instances that share the same name set to 1.

  A value of .

  A value of .

  Default input and output buffer sizes.

  No pipe security.

  A value of .

  No specified additional .

  Initializes a new instance of the class with the specified pipe name.

  The name of the pipe.
- Constructor
  4.0.0.0

  This constructor creates a object that has the following characteristics:

  A value of .

  A value of .

  Default input and output buffer sizes.

  No pipe security.

  A value of .

  No specified additional .

  Initializes a new instance of the class with the specified pipe name and pipe direction.

  The name of the pipe.
  One of the enumeration values that determines the direction of the pipe.
- Constructor
  4.0.0.0

  This constructor creates a object that has the following characteristics:

  A default value of 1 for the maximum number of server instances that share the same name.

  A default value of .

  A value of .

  Default input and output buffer sizes.

  No pipe security.

  A value of .

  No specified additional .

  Initializes a new instance of the class with the specified pipe name, pipe direction, and maximum number of server instances.

  The name of the pipe.
  One of the enumeration values that determines the direction of the pipe.
  The maximum number of server instances that share the same name. You can pass for this value.
- Constructor
  4.0.0.0
  To be added.

  Initializes a new instance of the class from the specified pipe handle.

  One of the enumeration values that determines the direction of the pipe.
  true to indicate that the handle was opened asynchronously; otherwise, false.
  true to indicate that the pipe is connected; otherwise, false.
  A safe handle for the pipe that this object will encapsulate.
- Constructor
  4.0.0.0

  This constructor creates a object that has the following characteristics:

  A default value of .

  Default input and output buffer sizes.

  No pipe security.

  A value of .

  No specified additional .

  Initializes a new instance of the class with the specified pipe name, pipe direction, maximum number of server instances, and transmission mode.

  The name of the pipe.
  One of the enumeration values that determines the direction of the pipe.
  The maximum number of server instances that share the same name. You can pass for this value.
  One of the enumeration values that determines the transmission mode of the pipe.
- Constructor
  4.0.0.0

  This constructor creates a object that has the following characteristics:

  Default input and output buffer sizes.

  No pipe security.

  A value of .

  No specified additional .

  Initializes a new instance of the class with the specified pipe name, pipe direction, maximum number of server instances, transmission mode, and pipe options.

  The name of the pipe.
  One of the enumeration values that determines the direction of the pipe.
  The maximum number of server instances that share the same name. You can pass for this value.
  One of the enumeration values that determines the transmission mode of the pipe.
  One of the enumeration values that determines how to open or create the pipe.
- Constructor
  4.0.0.0

  This constructor creates a object that has the following characteristics:

  No additional pipe security.

  A default value of .

  No specified additional .

  Initializes a new instance of the class with the specified pipe name, pipe direction, maximum number of server instances, transmission mode, pipe options, and recommended in and out buffer sizes.

  The name of the pipe.
  One of the enumeration values that determines the direction of the pipe.
  The maximum number of server instances that share the same name. You can pass for this value.
  One of the enumeration values that determines the transmission mode of the pipe.
  One of the enumeration values that determines how to open or create the pipe.
  A positive value greater than 0 that indicates the input buffer size.
  A positive value greater than 0 that indicates the output buffer size.
- Constructor
  4.0.0.0

  This constructor creates a object that has the following characteristics:

  A default value of .

  No specified additional .

  Initializes a new instance of the class with the specified pipe name, pipe direction, maximum number of server instances, transmission mode, pipe options, recommended in and out buffer sizes, and pipe security.

  The name of the pipe.
  One of the enumeration values that determines the direction of the pipe.
  The maximum number of server instances that share the same name. You can pass for this value.
  One of the enumeration values that determines the transmission mode of the pipe.
  One of the enumeration values that determines how to open or create the pipe.
  A positive value greater than 0 that indicates the input buffer size.
  A positive value greater than 0 that indicates the output buffer size.
  An object that determines the access control and audit security for the pipe.
- Constructor
  4.0.0.0

  This constructor creates a object that has no specified additional .

  Initializes a new instance of the class with the specified pipe name, pipe direction, maximum number of server instances, transmission mode, pipe options, recommended in and out buffer sizes, pipe security, and inheritability mode.

  The name of the pipe.
  One of the enumeration values that determines the direction of the pipe.
  The maximum number of server instances that share the same name. You can pass for this value.
  One of the enumeration values that determines the transmission mode of the pipe.
  One of the enumeration values that determines how to open or create the pipe.
  A positive value greater than 0 that indicates the input buffer size.
  A positive value greater than 0 that indicates the output buffer size.
  An object that determines the access control and audit security for the pipe.
  One of the enumeration values that determines whether the underlying handle can be inherited by child processes.
- Constructor
  4.0.0.0
  System.MonoTODO
  To be added.

  Initializes a new instance of the class with the specified pipe name, pipe direction, maximum number of server instances, transmission mode, pipe options, recommended in and out buffer sizes, pipe security, inheritability mode, and pipe access rights.

  The name of the pipe.
  One of the enumeration values that determines the direction of the pipe.
  The maximum number of server instances that share the same name. You can pass for this value.
  One of the enumeration values that determines the transmission mode of the pipe.
  One of the enumeration values that determines how to open or create the pipe.
  The input buffer size.
  The output buffer size.
  An object that determines the access control and audit security for the pipe.
  One of the enumeration values that determines whether the underlying handle can be inherited by child processes.
  One of the enumeration values that specifies the access rights of the pipe.
- Method
  4.0.0.0
  System.IAsyncResult `` ``

  This is the asynchronous equivalent of .

  must be called exactly once for every call to .

  Begins an asynchronous operation to wait for a client to connect.

  An object that references the asynchronous request.

  The method to call when a client connects to the object. A user-provided object that distinguishes this particular asynchronous request from other requests.
- Method
  4.0.0.0
  System.Void

  Calling the method will block until all the sent characters have been read unless the transmission mode of the pipe is set to and the buffer size is set in the constructor that created the object. In this case, not all of the messages will be received. Calling causes the server to block until all the data has been read from the pipe.

  Disconnects the current connection.

- Method
  4.0.0.0
  System.Void ``

  must be called exactly once for every call to .

  Ends an asynchronous operation to wait for a client to connect.

  The pending asynchronous request.
- Method
  4.0.0.0
  System.MonoTODO
  System.String

  The method returns null if the client has not yet written to the pipe or if the connected client did not connect with a of .

  Gets the user name of the client on the other end of the pipe.

  The user name of the client on the other end of the pipe.

- Field
  4.0.0.0
  System.Int32 -1

  Use the when creating a object to set the maximum number of server instances that the system resources allow.

  Represents the maximum number of server instances that the system resources allow.

- Method
  4.0.0.0
  System.MonoTODO
  System.Void ``

  The connecting client's permissions are applied to the remote server. For example, if the connecting client tries to request the contents of a file on the server, the client can request only files that it has sufficient permissions to open.

  Calls a delegate while impersonating the client.

  The delegate that specifies a method to call.
- Method
  4.0.0.0
  System.Void

  Calling this method causes the object to block until a client connects.

  Waits for a client to connect to this object.