Język

AnonymousPipeClientStream Konstruktory

Definicja

Inicjuje nowe wystąpienie klasy AnonymousPipeClientStream.

Przeciążenia

Nazwa Opis
AnonymousPipeClientStream(String)

Inicjuje nowe wystąpienie AnonymousPipeClientStream klasy z określoną reprezentacją ciągu uchwytu potoku.

AnonymousPipeClientStream(PipeDirection, SafePipeHandle)

Inicjuje nowe wystąpienie AnonymousPipeClientStream klasy z określonego uchwytu.

AnonymousPipeClientStream(PipeDirection, String)

Inicjuje nowe wystąpienie AnonymousPipeClientStream klasy z określonym kierunkiem potoku i ciągiem reprezentującym uchwyt potoku.

AnonymousPipeClientStream(String)

Źródło:
AnonymousPipeClientStream.cs
Źródło:
AnonymousPipeClientStream.cs
Źródło:
AnonymousPipeClientStream.cs
Źródło:
AnonymousPipeClientStream.cs
Źródło:
AnonymousPipeClientStream.cs

Inicjuje nowe wystąpienie AnonymousPipeClientStream klasy z określoną reprezentacją ciągu uchwytu potoku.

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

Parametry

pipeHandleAsString
String

Ciąg reprezentujący uchwyt potoku.

Wyjątki

pipeHandleAsString nie jest prawidłowym uchwytem potoku.

Przykłady

W poniższym przykładzie pokazano sposób wysyłania ciągu z procesu nadrzędnego do procesu podrzędnego przy użyciu potoków anonimowych. W tym przykładzie AnonymousPipeClientStream obiekt jest tworzony w procesie podrzędnym.

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

class PipeClient
{
    static void Main(string[] args)
    {
        if (args.Length > 0)
        {
            using (PipeStream pipeClient =
                new AnonymousPipeClientStream(args[0]))
            {

                Console.WriteLine("Current TransmissionMode: {0}.",
                   pipeClient.TransmissionMode);

                // Anonymous Pipes do not support Message mode.
                try
                {
                    Console.WriteLine("Setting ReadMode to \"Message\".");
                    pipeClient.ReadMode = PipeTransmissionMode.Message;
                }
                catch (NotSupportedException e)
                {
                    Console.WriteLine("EXCEPTION: {0}", e.Message);
                }

                using (StreamReader sr = new StreamReader(pipeClient))
                {
                    // Display the read text to the console
                    string temp;
                    while ((temp = sr.ReadLine()) != null)
                    {
                        Console.WriteLine(temp);
                    }
                }
            }
        }
        Console.Write("Press Enter to continue...");
        Console.ReadLine();
    }
}
Imports System.IO
Imports System.IO.Pipes

Class PipeClient

    Shared Sub Main(ByVal args As String())
        If (args.Length > 0) Then

            Using pipeClient As New AnonymousPipeClientStream(args(0))

                Console.WriteLine("Current TransmissionMode: {0}.", _
                   pipeClient.TransmissionMode)

                ' Anonymous Pipes do not support Message mode.
                Try
                    Console.WriteLine("Setting ReadMode to 'Message'.")
                    pipeClient.ReadMode = PipeTransmissionMode.Message
                Catch e As NotSupportedException
                    Console.WriteLine("EXCEPTION: {0}", e.Message)
                End Try

                Using sr As New StreamReader(pipeClient)

                    ' Display the read text to the console
                    Dim temp As String
                    temp = sr.ReadLine()
                    While Not temp = Nothing
                        Console.WriteLine(temp)
                        temp = sr.ReadLine()
                    End While
                End Using
            End Using
        End If
        Console.Write("Press Enter to continue...")
        Console.ReadLine()
    End Sub
End Class

Uwagi

W przypadku konstruktorów bez parametru domyślnym kierunkiem PipeDirection jest In.

Dotyczy

AnonymousPipeClientStream(PipeDirection, SafePipeHandle)

Źródło:
AnonymousPipeClientStream.cs
Źródło:
AnonymousPipeClientStream.cs
Źródło:
AnonymousPipeClientStream.cs
Źródło:
AnonymousPipeClientStream.cs
Źródło:
AnonymousPipeClientStream.cs

Inicjuje nowe wystąpienie AnonymousPipeClientStream klasy z określonego uchwytu.

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

Parametry

direction
PipeDirection

Jedna z wartości wyliczenia, która określa kierunek potoku.

Potoki anonimowe mogą być tylko w jednym kierunku, więc direction nie można ustawić wartości InOut.

safePipeHandle
SafePipeHandle

Bezpieczny uchwyt dla potoku, który ten AnonymousPipeClientStream obiekt będzie hermetyzować.

Atrybuty

Wyjątki

safePipeHandle nie jest prawidłowym uchwytem.

Parametr safePipeHandle ma wartość null.

direction jest ustawiony na InOut.

Wystąpił błąd we/wy, taki jak błąd dysku.

— lub —

Strumień został zamknięty.

Przykłady

W poniższym przykładzie pokazano sposób wysyłania ciągu z procesu nadrzędnego do procesu podrzędnego przy użyciu potoków anonimowych. W tym przykładzie AnonymousPipeClientStream obiekt jest tworzony w procesie podrzędnym o PipeDirection wartości In.

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

class PipeClient
{
    static void Main(string[] args)
    {
        if (args.Length > 0)
        {
            using (PipeStream pipeClient =
                new AnonymousPipeClientStream(args[0]))
            {

                Console.WriteLine("Current TransmissionMode: {0}.",
                   pipeClient.TransmissionMode);

                // Anonymous Pipes do not support Message mode.
                try
                {
                    Console.WriteLine("Setting ReadMode to \"Message\".");
                    pipeClient.ReadMode = PipeTransmissionMode.Message;
                }
                catch (NotSupportedException e)
                {
                    Console.WriteLine("EXCEPTION: {0}", e.Message);
                }

                using (StreamReader sr = new StreamReader(pipeClient))
                {
                    // Display the read text to the console
                    string temp;
                    while ((temp = sr.ReadLine()) != null)
                    {
                        Console.WriteLine(temp);
                    }
                }
            }
        }
        Console.Write("Press Enter to continue...");
        Console.ReadLine();
    }
}
Imports System.IO
Imports System.IO.Pipes

Class PipeClient

    Shared Sub Main(ByVal args As String())
        If (args.Length > 0) Then

            Using pipeClient As New AnonymousPipeClientStream(args(0))

                Console.WriteLine("Current TransmissionMode: {0}.", _
                   pipeClient.TransmissionMode)

                ' Anonymous Pipes do not support Message mode.
                Try
                    Console.WriteLine("Setting ReadMode to 'Message'.")
                    pipeClient.ReadMode = PipeTransmissionMode.Message
                Catch e As NotSupportedException
                    Console.WriteLine("EXCEPTION: {0}", e.Message)
                End Try

                Using sr As New StreamReader(pipeClient)

                    ' Display the read text to the console
                    Dim temp As String
                    temp = sr.ReadLine()
                    While Not temp = Nothing
                        Console.WriteLine(temp)
                        temp = sr.ReadLine()
                    End While
                End Using
            End Using
        End If
        Console.Write("Press Enter to continue...")
        Console.ReadLine()
    End Sub
End Class

Uwagi

Wartość PipeDirection nie jest obsługiwana InOut , ponieważ potoki anonimowe są definiowane jako jednokierunkowe.

Dotyczy

AnonymousPipeClientStream(PipeDirection, String)

Źródło:
AnonymousPipeClientStream.cs
Źródło:
AnonymousPipeClientStream.cs
Źródło:
AnonymousPipeClientStream.cs
Źródło:
AnonymousPipeClientStream.cs
Źródło:
AnonymousPipeClientStream.cs

Inicjuje nowe wystąpienie AnonymousPipeClientStream klasy z określonym kierunkiem potoku i ciągiem reprezentującym uchwyt potoku.

public:
 AnonymousPipeClientStream(System::IO::Pipes::PipeDirection direction, System::String ^ pipeHandleAsString);
public AnonymousPipeClientStream(System.IO.Pipes.PipeDirection direction, string pipeHandleAsString);
[System.Security.SecurityCritical]
public AnonymousPipeClientStream(System.IO.Pipes.PipeDirection direction, string pipeHandleAsString);
new System.IO.Pipes.AnonymousPipeClientStream : System.IO.Pipes.PipeDirection * string -> System.IO.Pipes.AnonymousPipeClientStream
[<System.Security.SecurityCritical>]
new System.IO.Pipes.AnonymousPipeClientStream : System.IO.Pipes.PipeDirection * string -> System.IO.Pipes.AnonymousPipeClientStream
Public Sub New (direction As PipeDirection, pipeHandleAsString As String)

Parametry

direction
PipeDirection

Jedna z wartości wyliczenia, która określa kierunek potoku.

Potoki anonimowe mogą być tylko w jednym kierunku, więc direction nie można ustawić wartości InOut.

pipeHandleAsString
String

Ciąg reprezentujący uchwyt potoku.

Atrybuty

Wyjątki

pipeHandleAsString jest nieprawidłowym uchwytem.

Parametr pipeHandleAsString ma wartość null.

direction jest ustawiony na InOut.

Przykłady

W poniższym przykładzie pokazano sposób wysyłania ciągu z procesu nadrzędnego do procesu podrzędnego przy użyciu potoków anonimowych. W tym przykładzie AnonymousPipeClientStream obiekt jest tworzony w procesie podrzędnym o PipeDirection wartości In.

//<snippet01>
using System;
using System.IO;
using System.IO.Pipes;

class PipeClient
{
    static void Main(string[] args)
    {
        if (args.Length > 0)
        {
            using (PipeStream pipeClient =
                new AnonymousPipeClientStream(PipeDirection.In, args[0]))
            {
                Console.WriteLine("[CLIENT] Current TransmissionMode: {0}.",
                   pipeClient.TransmissionMode);

                using (StreamReader sr = new StreamReader(pipeClient))
                {
                    // Display the read text to the console
                    string temp;

                    // Wait for 'sync message' from the server.
                    do
                    {
                        Console.WriteLine("[CLIENT] Wait for sync...");
                        temp = sr.ReadLine();
                    }
                    while (!temp.StartsWith("SYNC"));

                    // Read the server data and echo to the console.
                    while ((temp = sr.ReadLine()) != null)
                    {
                        Console.WriteLine("[CLIENT] Echo: " + temp);
                    }
                }
            }
        }
        Console.Write("[CLIENT] Press Enter to continue...");
        Console.ReadLine();
    }
}
//</snippet01>
'<snippet01>
Imports System.IO
Imports System.IO.Pipes

Class PipeClient
    Shared Sub Main(args() as String)
        If args.Length > 0 Then
            Using pipeClient As New AnonymousPipeClientStream(PipeDirection.In, args(0))
                Console.WriteLine("[CLIENT] Current TransmissionMode: {0}.", _
                   pipeClient.TransmissionMode)

                Using sr As New StreamReader(pipeClient)
                    ' Display the read text to the console
                    Dim temp As String

                    ' Wait for 'sync message' from the server.
                    Do
                        Console.WriteLine("[CLIENT] Wait for sync...")
                        temp = sr.ReadLine()
                    Loop While temp.StartsWith("SYNC") = False

                    ' Read the server data and echo to the console.
                    temp = sr.ReadLine()
                    While Not temp = Nothing
                        Console.WriteLine("[CLIENT] Echo: " + temp)
                        temp = sr.ReadLine()
                    End While
                End Using
            End Using
        End If
        Console.Write("[CLIENT] Press Enter to continue...")
        Console.ReadLine()
    End Sub
End Class
'</snippet01>

Uwagi

Wartość PipeDirection nie jest obsługiwana InOut , ponieważ potoki anonimowe są definiowane jako jednokierunkowe.

Dotyczy