NamedPipeServerStream Constructor (String^, PipeDirection, Int32, PipeTransmissionMode, PipeOptions, Int32, Int32, PipeSecurity^, HandleInheritability, PipeAccessRights)

 

Initializes a new instance of the NamedPipeServerStream 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.

Namespace:   System.IO.Pipes
Assembly:  System.Core (in System.Core.dll)

public:
NamedPipeServerStream(
	String^ pipeName,
	PipeDirection direction,
	int maxNumberOfServerInstances,
	PipeTransmissionMode transmissionMode,
	PipeOptions options,
	int inBufferSize,
	int outBufferSize,
	PipeSecurity^ pipeSecurity,
	HandleInheritability inheritability,
	PipeAccessRights additionalAccessRights
)

Parameters

pipeName
Type: System::String^

The name of the pipe.

direction
Type: System.IO.Pipes::PipeDirection

One of the enumeration values that determines the direction of the pipe.

maxNumberOfServerInstances
Type: System::Int32

The maximum number of server instances that share the same name. You can pass MaxAllowedServerInstances for this value.

transmissionMode
Type: System.IO.Pipes::PipeTransmissionMode

One of the enumeration values that determines the transmission mode of the pipe.

options
Type: System.IO.Pipes::PipeOptions

One of the enumeration values that determines how to open or create the pipe.

inBufferSize
Type: System::Int32

The input buffer size.

outBufferSize
Type: System::Int32

The output buffer size.

pipeSecurity
Type: System.IO.Pipes::PipeSecurity^

An object that determines the access control and audit security for the pipe.

inheritability
Type: System.IO::HandleInheritability

One of the enumeration values that determines whether the underlying handle can be inherited by child processes.

additionalAccessRights
Type: System.IO.Pipes::PipeAccessRights

One of the enumeration values that specifies the access rights of the pipe.

Exception Condition
ArgumentNullException

pipeName is null.

ArgumentException

pipeName is a zero-length string.

ArgumentOutOfRangeException

pipeName is set to "anonymous".

-or-

direction is not a valid PipeDirection value.

-or-

maxNumberofServerInstances is less than -1 or greater than 254 (-1 indicates MaxAllowedServerInstances)

-or-

options is not a valid PipeOptions value.

-or-

inBufferSize is negative.

-or-

inheritability is not a valid HandleInheritability value.

-or-

additionalAccessRights is not a valid PipeAccessRights value.

NotSupportedException

pipeName contains a colon (":").

PlatformNotSupportedException

The operating system is Windows Millennium Edition, Windows 98, or Windows 95, which are not supported.

IOException

The maximum number of server instances has been exceeded.

Demand

For full trust for the immediate caller. This member cannot be used by partially trusted code.

.NET Framework
Available since 3.5
Return to top
Show: