AnonymousPipeClientStream 构造函数   
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
初始化 AnonymousPipeClientStream 类的新实例。
重载
| AnonymousPipeClientStream(String) | 使用指定的管道句柄字符串表示形式初始化 AnonymousPipeClientStream 类的一个新实例。 | 
| AnonymousPipeClientStream(PipeDirection, SafePipeHandle) | 从指定的图柄初始化 AnonymousPipeClientStream 类的新实例。 | 
| AnonymousPipeClientStream(PipeDirection, String) | 使用指定的管道方向和管道句柄字符串表示形式初始化 AnonymousPipeClientStream 类的一个新实例。 | 
AnonymousPipeClientStream(String)
- Source:
- AnonymousPipeClientStream.cs
- Source:
- AnonymousPipeClientStream.cs
- Source:
- AnonymousPipeClientStream.cs
使用指定的管道句柄字符串表示形式初始化 AnonymousPipeClientStream 类的一个新实例。
public:
 AnonymousPipeClientStream(System::String ^ pipeHandleAsString);public AnonymousPipeClientStream (string pipeHandleAsString);new System.IO.Pipes.AnonymousPipeClientStream : string -> System.IO.Pipes.AnonymousPipeClientStreamPublic Sub New (pipeHandleAsString As String)参数
- pipeHandleAsString
- String
一个表示管道句柄的字符串。
例外
              pipeHandleAsString 不是有效的管道句柄。
示例
以下示例演示了一种使用匿名管道将字符串从父进程发送到子进程的方法。 在此示例中,在 AnonymousPipeClientStream 子进程中创建对象。
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
注解
对于没有参数的 PipeDirection 构造函数,默认方向为 In。
适用于
AnonymousPipeClientStream(PipeDirection, SafePipeHandle)
- Source:
- AnonymousPipeClientStream.cs
- Source:
- AnonymousPipeClientStream.cs
- Source:
- AnonymousPipeClientStream.cs
从指定的图柄初始化 AnonymousPipeClientStream 类的新实例。
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.AnonymousPipeClientStreamPublic Sub New (direction As PipeDirection, safePipeHandle As SafePipeHandle)参数
- safePipeHandle
- SafePipeHandle
此 AnonymousPipeClientStream 对象将封装的管道的安全句柄。
- 属性
例外
              safePipeHandle 不是有效的句图柄。
              safePipeHandle 为 null。
将 direction 设置为 InOut。
示例
以下示例演示了一种使用匿名管道将字符串从父进程发送到子进程的方法。 在此示例中,AnonymousPipeClientStream在值为 In的子进程中PipeDirection创建对象。
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
注解
PipeDirection不支持 值,InOut因为匿名管道定义为单向管道。
适用于
AnonymousPipeClientStream(PipeDirection, String)
- Source:
- AnonymousPipeClientStream.cs
- Source:
- AnonymousPipeClientStream.cs
- Source:
- AnonymousPipeClientStream.cs
使用指定的管道方向和管道句柄字符串表示形式初始化 AnonymousPipeClientStream 类的一个新实例。
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.AnonymousPipeClientStreamPublic Sub New (direction As PipeDirection, pipeHandleAsString As String)参数
- pipeHandleAsString
- String
一个表示管道句柄的字符串。
- 属性
例外
              pipeHandleAsString 是无效的句柄。
              pipeHandleAsString 为 null。
将 direction 设置为 InOut。
示例
以下示例演示了一种使用匿名管道将字符串从父进程发送到子进程的方法。 在此示例中,AnonymousPipeClientStream在值为 In的子进程中PipeDirection创建对象。
//<snippet01>
#using <System.Core.dll>
using namespace System;
using namespace System::IO;
using namespace System::IO::Pipes;
ref class PipeClient
{
public:
    static void Main(array<String^>^ args)
    {
        if (args->Length > 1)
        {
            PipeStream^ pipeClient = gcnew AnonymousPipeClientStream(PipeDirection::In, args[1]);
            Console::WriteLine("[CLIENT] Current TransmissionMode: {0}.",
                pipeClient->TransmissionMode);
            StreamReader^ sr = gcnew 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()) != nullptr)
            {
                Console::WriteLine("[CLIENT] Echo: " + temp);
            }
            sr->Close();
            pipeClient->Close();
        }
        Console::Write("[CLIENT] Press Enter to continue...");
        Console::ReadLine();
    }
};
int main()
{
    array<String^>^ args = Environment::GetCommandLineArgs();
    PipeClient::Main(args);
}
//</snippet01>
//<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>
注解
PipeDirection不支持 值,InOut因为匿名管道定义为单向管道。