Поделиться через


NamedPipeClientStream Конструкторы

Определение

Инициализирует новый экземпляр класса NamedPipeClientStream.

Перегрузки

NamedPipeClientStream(String)

Инициализирует новый экземпляр класса NamedPipeClientStream с указанным именем канала.

NamedPipeClientStream(String, String)

Инициализирует новый экземпляр класса NamedPipeClientStream с заданными именами канала и сервера.

NamedPipeClientStream(String, String, PipeDirection)

Инициализирует новый экземпляр класса NamedPipeClientStream с заданными именами канала и сервера и указанным направлением канала.

NamedPipeClientStream(PipeDirection, Boolean, Boolean, SafePipeHandle)

Инициализирует новый экземпляр класса NamedPipeClientStream для заданного дескриптора канала с указанным направлением канала.

NamedPipeClientStream(String, String, PipeDirection, PipeOptions)

Инициализирует новый экземпляр класса NamedPipeClientStream с заданными именами канала и сервера, направлением канала и параметрами канала.

NamedPipeClientStream(String, String, PipeDirection, PipeOptions, TokenImpersonationLevel)

Инициализирует новый экземпляр класса NamedPipeClientStream с заданными именами канала и сервера, направлением канала, параметрами канала и уровнем олицетворения безопасности.

NamedPipeClientStream(String, String, PipeAccessRights, PipeOptions, TokenImpersonationLevel, HandleInheritability)

Инициализирует новый экземпляр класса NamedPipeClientStream с заданными именами канала и сервера, параметрами канала, уровнем олицетворения безопасности и режимом наследования.

NamedPipeClientStream(String, String, PipeDirection, PipeOptions, TokenImpersonationLevel, HandleInheritability)

Инициализирует новый экземпляр класса NamedPipeClientStream с заданными именами канала и сервера, направлением канала, параметрами канала, уровнем олицетворения безопасности и режимом наследования.

NamedPipeClientStream(String)

Исходный код:
NamedPipeClientStream.cs
Исходный код:
NamedPipeClientStream.cs
Исходный код:
NamedPipeClientStream.cs

Инициализирует новый экземпляр класса NamedPipeClientStream с указанным именем канала.

public:
 NamedPipeClientStream(System::String ^ pipeName);
public NamedPipeClientStream (string pipeName);
new System.IO.Pipes.NamedPipeClientStream : string -> System.IO.Pipes.NamedPipeClientStream
Public Sub New (pipeName As String)

Параметры

pipeName
String

Имя канала.

Исключения

pipeName имеет значение null.

pipeName представляет собой строку нулевой длины.

Для pipeName задано значение anonymous.

Комментарии

Этот конструктор использует следующие значения по умолчанию:

Применяется к

NamedPipeClientStream(String, String)

Исходный код:
NamedPipeClientStream.cs
Исходный код:
NamedPipeClientStream.cs
Исходный код:
NamedPipeClientStream.cs

Инициализирует новый экземпляр класса NamedPipeClientStream с заданными именами канала и сервера.

public:
 NamedPipeClientStream(System::String ^ serverName, System::String ^ pipeName);
public NamedPipeClientStream (string serverName, string pipeName);
new System.IO.Pipes.NamedPipeClientStream : string * string -> System.IO.Pipes.NamedPipeClientStream
Public Sub New (serverName As String, pipeName As String)

Параметры

serverName
String

Имя удаленного компьютера, к которому нужно подключиться, или значение ".", чтобы указать локальный компьютер.

pipeName
String

Имя канала.

Исключения

Параметр pipeName или serverName имеет значение null.

Параметр pipeName или параметр serverName является строкой нулевой длины.

Для pipeName задано значение anonymous.

Комментарии

Этот конструктор использует следующие значения по умолчанию:

Применяется к

NamedPipeClientStream(String, String, PipeDirection)

Исходный код:
NamedPipeClientStream.cs
Исходный код:
NamedPipeClientStream.cs
Исходный код:
NamedPipeClientStream.cs

Инициализирует новый экземпляр класса NamedPipeClientStream с заданными именами канала и сервера и указанным направлением канала.

public:
 NamedPipeClientStream(System::String ^ serverName, System::String ^ pipeName, System::IO::Pipes::PipeDirection direction);
public NamedPipeClientStream (string serverName, string pipeName, System.IO.Pipes.PipeDirection direction);
new System.IO.Pipes.NamedPipeClientStream : string * string * System.IO.Pipes.PipeDirection -> System.IO.Pipes.NamedPipeClientStream
Public Sub New (serverName As String, pipeName As String, direction As PipeDirection)

Параметры

serverName
String

Имя удаленного компьютера, к которому нужно подключиться, или значение ".", чтобы указать локальный компьютер.

pipeName
String

Имя канала.

direction
PipeDirection

Одно из значений перечисления, определяющее направление канала.

Исключения

Параметр pipeName или serverName имеет значение null.

Параметр pipeName или параметр serverName является строкой нулевой длины.

Для pipeName задано значение anonymous.

-или-

direction не является допустимым значением PipeDirection.

Примеры

В следующем примере демонстрируется метод для отправки строки из родительского процесса в дочерний процесс с помощью именованных каналов. В этом примере создается NamedPipeClientStream объект в дочернем процессе, который затем подключается к каналу на локальном компьютере. Пример сервера можно увидеть в NamedPipeServerStream классе . Этот пример является частью более крупного примера, предоставленного NamedPipeServerStream для классов и NamedPipeClientStream .

using System;
using System.IO;
using System.IO.Pipes;

class PipeClient
{
    static void Main(string[] args)
    {
        using (NamedPipeClientStream pipeClient =
            new NamedPipeClientStream(".", "testpipe", PipeDirection.In))
        {

            // Connect to the pipe or wait until the pipe is available.
            Console.Write("Attempting to connect to pipe...");
            pipeClient.Connect();

            Console.WriteLine("Connected to pipe.");
            Console.WriteLine("There are currently {0} pipe server instances open.",
               pipeClient.NumberOfServerInstances);
            using (StreamReader sr = new StreamReader(pipeClient))
            {
                // Display the read text to the console
                string temp;
                while ((temp = sr.ReadLine()) != null)
                {
                    Console.WriteLine("Received from server: {0}", temp);
                }
            }
        }
        Console.Write("Press Enter to continue...");
        Console.ReadLine();
    }
}
Imports System.IO
Imports System.IO.Pipes
Imports System.Security.Principal

Class PipeClient

    Shared Sub Main(ByVal args As String())

        Dim pipeClient As New NamedPipeClientStream("localhost", _
                    "testpipe", PipeDirection.In, PipeOptions.None)

        ' Connect to the pipe or wait until the pipe is available.
        Console.WriteLine("Attempting to connect to the pipe...")
        pipeClient.Connect()

        Console.WriteLine("Connect to the pipe.")
        Console.WriteLine("There are currently {0} pipe server instances open.", _
                          pipeClient.NumberOfServerInstances)

        Dim sr As New StreamReader(pipeClient)
        Dim temp As String

        temp = sr.ReadLine()
        While Not temp Is Nothing
            Console.WriteLine("Received from server: {0}", temp)
            temp = sr.ReadLine()
        End While
        Console.Write("Press Enter to continue...")
        Console.ReadLine()
    End Sub
End Class

Комментарии

Этот конструктор использует следующие значения по умолчанию:

Применяется к

NamedPipeClientStream(PipeDirection, Boolean, Boolean, SafePipeHandle)

Исходный код:
NamedPipeClientStream.cs
Исходный код:
NamedPipeClientStream.cs
Исходный код:
NamedPipeClientStream.cs

Инициализирует новый экземпляр класса NamedPipeClientStream для заданного дескриптора канала с указанным направлением канала.

public:
 NamedPipeClientStream(System::IO::Pipes::PipeDirection direction, bool isAsync, bool isConnected, Microsoft::Win32::SafeHandles::SafePipeHandle ^ safePipeHandle);
public NamedPipeClientStream (System.IO.Pipes.PipeDirection direction, bool isAsync, bool isConnected, Microsoft.Win32.SafeHandles.SafePipeHandle safePipeHandle);
[System.Security.SecurityCritical]
public NamedPipeClientStream (System.IO.Pipes.PipeDirection direction, bool isAsync, bool isConnected, Microsoft.Win32.SafeHandles.SafePipeHandle safePipeHandle);
new System.IO.Pipes.NamedPipeClientStream : System.IO.Pipes.PipeDirection * bool * bool * Microsoft.Win32.SafeHandles.SafePipeHandle -> System.IO.Pipes.NamedPipeClientStream
[<System.Security.SecurityCritical>]
new System.IO.Pipes.NamedPipeClientStream : System.IO.Pipes.PipeDirection * bool * bool * Microsoft.Win32.SafeHandles.SafePipeHandle -> System.IO.Pipes.NamedPipeClientStream
Public Sub New (direction As PipeDirection, isAsync As Boolean, isConnected As Boolean, safePipeHandle As SafePipeHandle)

Параметры

direction
PipeDirection

Одно из значений перечисления, определяющее направление канала.

isAsync
Boolean

Значение true, если дескриптор открыт асинхронно; в противном случае — значение false.

isConnected
Boolean

true, если канал подключен, в противном случае — false.

safePipeHandle
SafePipeHandle

Безопасный дескриптор для канала, который будет инкапсулироваться данным объектом NamedPipeClientStream.

Атрибуты

Исключения

Поток закрыт.

safePipeHandle не является допустимым дескриптором.

safePipeHandle имеет значение null.

direction не является допустимым значением PipeDirection.

Применяется к

NamedPipeClientStream(String, String, PipeDirection, PipeOptions)

Исходный код:
NamedPipeClientStream.cs
Исходный код:
NamedPipeClientStream.cs
Исходный код:
NamedPipeClientStream.cs

Инициализирует новый экземпляр класса NamedPipeClientStream с заданными именами канала и сервера, направлением канала и параметрами канала.

public:
 NamedPipeClientStream(System::String ^ serverName, System::String ^ pipeName, System::IO::Pipes::PipeDirection direction, System::IO::Pipes::PipeOptions options);
public NamedPipeClientStream (string serverName, string pipeName, System.IO.Pipes.PipeDirection direction, System.IO.Pipes.PipeOptions options);
new System.IO.Pipes.NamedPipeClientStream : string * string * System.IO.Pipes.PipeDirection * System.IO.Pipes.PipeOptions -> System.IO.Pipes.NamedPipeClientStream
Public Sub New (serverName As String, pipeName As String, direction As PipeDirection, options As PipeOptions)

Параметры

serverName
String

Имя удаленного компьютера, к которому нужно подключиться, или значение ".", чтобы указать локальный компьютер.

pipeName
String

Имя канала.

direction
PipeDirection

Одно из значений перечисления, определяющее направление канала.

options
PipeOptions

Одно из значений перечисления, определяющее способ открытия или создания канала.

Исключения

Параметр pipeName или serverName имеет значение null.

Параметр pipeName или параметр serverName является строкой нулевой длины.

Для pipeName задано значение anonymous.

-или-

direction не является допустимым значением PipeDirection.

-или-

options не является допустимым значением PipeOptions.

Комментарии

Этот конструктор использует следующие значения по умолчанию:

Применяется к

NamedPipeClientStream(String, String, PipeDirection, PipeOptions, TokenImpersonationLevel)

Исходный код:
NamedPipeClientStream.cs
Исходный код:
NamedPipeClientStream.cs
Исходный код:
NamedPipeClientStream.cs

Инициализирует новый экземпляр класса NamedPipeClientStream с заданными именами канала и сервера, направлением канала, параметрами канала и уровнем олицетворения безопасности.

public:
 NamedPipeClientStream(System::String ^ serverName, System::String ^ pipeName, System::IO::Pipes::PipeDirection direction, System::IO::Pipes::PipeOptions options, System::Security::Principal::TokenImpersonationLevel impersonationLevel);
public NamedPipeClientStream (string serverName, string pipeName, System.IO.Pipes.PipeDirection direction, System.IO.Pipes.PipeOptions options, System.Security.Principal.TokenImpersonationLevel impersonationLevel);
new System.IO.Pipes.NamedPipeClientStream : string * string * System.IO.Pipes.PipeDirection * System.IO.Pipes.PipeOptions * System.Security.Principal.TokenImpersonationLevel -> System.IO.Pipes.NamedPipeClientStream
Public Sub New (serverName As String, pipeName As String, direction As PipeDirection, options As PipeOptions, impersonationLevel As TokenImpersonationLevel)

Параметры

serverName
String

Имя удаленного компьютера, к которому нужно подключиться, или значение ".", чтобы указать локальный компьютер.

pipeName
String

Имя канала.

direction
PipeDirection

Одно из значений перечисления, определяющее направление канала.

options
PipeOptions

Одно из значений перечисления, определяющее способ открытия или создания канала.

impersonationLevel
TokenImpersonationLevel

Одно из значений перечисления, определяющее уровень олицетворения безопасности.

Исключения

Параметр pipeName или serverName имеет значение null.

Параметр pipeName или параметр serverName является строкой нулевой длины.

Для pipeName задано значение anonymous.

-или-

direction не является допустимым значением PipeDirection.

-или-

options не является допустимым значением PipeOptions.

-или-

impersonationLevel не является допустимым значением TokenImpersonationLevel.

Комментарии

Этот конструктор использует значение Noneпо умолчанию HandleInheritability .

Применяется к

NamedPipeClientStream(String, String, PipeAccessRights, PipeOptions, TokenImpersonationLevel, HandleInheritability)

Инициализирует новый экземпляр класса NamedPipeClientStream с заданными именами канала и сервера, параметрами канала, уровнем олицетворения безопасности и режимом наследования.

public:
 NamedPipeClientStream(System::String ^ serverName, System::String ^ pipeName, System::IO::Pipes::PipeAccessRights desiredAccessRights, System::IO::Pipes::PipeOptions options, System::Security::Principal::TokenImpersonationLevel impersonationLevel, System::IO::HandleInheritability inheritability);
[System.Runtime.Versioning.SupportedOSPlatform("windows")]
public NamedPipeClientStream (string serverName, string pipeName, System.IO.Pipes.PipeAccessRights desiredAccessRights, System.IO.Pipes.PipeOptions options, System.Security.Principal.TokenImpersonationLevel impersonationLevel, System.IO.HandleInheritability inheritability);
public NamedPipeClientStream (string serverName, string pipeName, System.IO.Pipes.PipeAccessRights desiredAccessRights, System.IO.Pipes.PipeOptions options, System.Security.Principal.TokenImpersonationLevel impersonationLevel, System.IO.HandleInheritability inheritability);
[<System.Runtime.Versioning.SupportedOSPlatform("windows")>]
new System.IO.Pipes.NamedPipeClientStream : string * string * System.IO.Pipes.PipeAccessRights * System.IO.Pipes.PipeOptions * System.Security.Principal.TokenImpersonationLevel * System.IO.HandleInheritability -> System.IO.Pipes.NamedPipeClientStream
new System.IO.Pipes.NamedPipeClientStream : string * string * System.IO.Pipes.PipeAccessRights * System.IO.Pipes.PipeOptions * System.Security.Principal.TokenImpersonationLevel * System.IO.HandleInheritability -> System.IO.Pipes.NamedPipeClientStream
Public Sub New (serverName As String, pipeName As String, desiredAccessRights As PipeAccessRights, options As PipeOptions, impersonationLevel As TokenImpersonationLevel, inheritability As HandleInheritability)

Параметры

serverName
String

Имя удаленного компьютера, к которому нужно подключиться, или значение ".", чтобы указать локальный компьютер.

pipeName
String

Имя канала.

desiredAccessRights
PipeAccessRights

Одно из значений перечисления, задающее требуемые права доступа для канала.

options
PipeOptions

Одно из значений перечисления, определяющее способ открытия или создания канала.

impersonationLevel
TokenImpersonationLevel

Одно из значений перечисления, определяющее уровень олицетворения безопасности.

inheritability
HandleInheritability

Одно из значений перечисления, определяющее, будет ли базовый дескриптор наследоваться дочерними процессами.

Атрибуты

Исключения

Параметр pipeName или serverName имеет значение null.

Параметр pipeName или параметр serverName является строкой нулевой длины.

Для pipeName задано значение anonymous.

-или-

options не является допустимым значением PipeOptions.

-или-

impersonationLevel не является допустимым значением TokenImpersonationLevel.

-или-

inheritability не является допустимым значением HandleInheritability.

Комментарии

Направление канала для этого конструктора определяется параметром desiredAccessRights . desiredAccessRights Если значение равно ReadData, направление канала будет равно In. Если значение desiredAccessRights равно WriteData, направление канала будет равно Out. Если значение desiredAccessRights включает и ReadDataWriteData, направление канала будет равно InOut.

Применяется к

NamedPipeClientStream(String, String, PipeDirection, PipeOptions, TokenImpersonationLevel, HandleInheritability)

Исходный код:
NamedPipeClientStream.cs
Исходный код:
NamedPipeClientStream.cs
Исходный код:
NamedPipeClientStream.cs

Инициализирует новый экземпляр класса NamedPipeClientStream с заданными именами канала и сервера, направлением канала, параметрами канала, уровнем олицетворения безопасности и режимом наследования.

public:
 NamedPipeClientStream(System::String ^ serverName, System::String ^ pipeName, System::IO::Pipes::PipeDirection direction, System::IO::Pipes::PipeOptions options, System::Security::Principal::TokenImpersonationLevel impersonationLevel, System::IO::HandleInheritability inheritability);
public NamedPipeClientStream (string serverName, string pipeName, System.IO.Pipes.PipeDirection direction, System.IO.Pipes.PipeOptions options, System.Security.Principal.TokenImpersonationLevel impersonationLevel, System.IO.HandleInheritability inheritability);
new System.IO.Pipes.NamedPipeClientStream : string * string * System.IO.Pipes.PipeDirection * System.IO.Pipes.PipeOptions * System.Security.Principal.TokenImpersonationLevel * System.IO.HandleInheritability -> System.IO.Pipes.NamedPipeClientStream
Public Sub New (serverName As String, pipeName As String, direction As PipeDirection, options As PipeOptions, impersonationLevel As TokenImpersonationLevel, inheritability As HandleInheritability)

Параметры

serverName
String

Имя удаленного компьютера, к которому нужно подключиться, или значение ".", чтобы указать локальный компьютер.

pipeName
String

Имя канала.

direction
PipeDirection

Одно из значений перечисления, определяющее направление канала.

options
PipeOptions

Одно из значений перечисления, определяющее способ открытия или создания канала.

impersonationLevel
TokenImpersonationLevel

Одно из значений перечисления, определяющее уровень олицетворения безопасности.

inheritability
HandleInheritability

Одно из значений перечисления, определяющее, будет ли базовый дескриптор наследоваться дочерними процессами.

Исключения

Параметр pipeName или serverName имеет значение null.

Параметр pipeName или параметр serverName является строкой нулевой длины.

Для pipeName задано значение anonymous.

-или-

direction не является допустимым значением PipeDirection.

-или-

options не является допустимым значением PipeOptions.

-или-

impersonationLevel не является допустимым значением TokenImpersonationLevel.

-или-

inheritability не является допустимым значением HandleInheritability.

Применяется к