+ public Task ConnectAsync(int timeout, CancellationToken cancellationToken);
+ public Task ConnectAsync(CancellationToken cancellationToken);
+ ~NamedPipeClientStream();
+ }
+ public sealed class NamedPipeServerStream : PipeStream {
+ public NamedPipeServerStream(PipeDirection direction, bool isAsync, bool isConnected, SafePipeHandle safePipeHandle);
+ public NamedPipeServerStream(string pipeName);
+ public NamedPipeServerStream(string pipeName, PipeDirection direction);
+ public NamedPipeServerStream(string pipeName, PipeDirection direction, int maxNumberOfServerInstances);
+ public NamedPipeServerStream(string pipeName, PipeDirection direction, int maxNumberOfServerInstances, PipeTransmissionMode transmissionMode);
+ public NamedPipeServerStream(string pipeName, PipeDirection direction, int maxNumberOfServerInstances, PipeTransmissionMode transmissionMode, PipeOptions options);
+ public NamedPipeServerStream(string pipeName, PipeDirection direction, int maxNumberOfServerInstances, PipeTransmissionMode transmissionMode, PipeOptions options, int inBufferSize, int outBufferSize);
+ public void Disconnect();
+ ~NamedPipeServerStream();
+ public string GetImpersonationUserName();
+ public void WaitForConnection();
+ public Task WaitForConnectionAsync();
+ public Task WaitForConnectionAsync(CancellationToken cancellationToken);
+ }
+ public enum PipeDirection {
+ In = 1,
+ InOut = 3,
+ Out = 2,
+ }
+ public enum PipeOptions {
+ Asynchronous = 1073741824,
+ None = 0,
+ WriteThrough = -2147483648,
+ }
+ public abstract class PipeStream : Stream {
+ protected PipeStream(PipeDirection direction, int bufferSize);
+ protected PipeStream(PipeDirection direction, PipeTransmissionMode transmissionMode, int outBufferSize);
+ public override bool CanRead { get; }
+ public override bool CanSeek { get; }
+ public override bool CanWrite { get; }
+ public virtual int InBufferSize { get; }
+ public bool IsAsync { get; }
+ public bool IsConnected { get; protected set; }
+ public bool IsMessageComplete { get; }
+ public override long Length { get; }
+ public virtual int OutBufferSize { get; }
+ public override long Position { get; set; }
+ public virtual PipeTransmissionMode ReadMode { get; set; }
+ public SafePipeHandle SafePipeHandle { get; }
+ public virtual PipeTransmissionMode TransmissionMode { get; }