NamedPipeServerStream.WaitForConnection Methode

Definition

Wartet auf das Herstellen einer Verbindung mit diesem NamedPipeServerStream-Objekt durch einen Client.Waits for a client to connect to this NamedPipeServerStream object.

public:
 void WaitForConnection();
public void WaitForConnection ();
[System.Security.SecurityCritical]
public void WaitForConnection ();
member this.WaitForConnection : unit -> unit
Public Sub WaitForConnection ()
Attribute

Ausnahmen

Eine Pipeverbindung wurde bereits hergestellt.A pipe connection has already been established.

Oder-or-

Das Pipehandle wurde nicht festgelegt.The pipe handle has not been set.

Die Pipe ist geschlossen.The pipe is closed.

Die Pipeverbindung wurde unterbrochen.The pipe connection has been broken.

Beispiele

Im folgenden Beispiel wird eine Methode veranschaulicht, mit der eine Zeichenfolge von einem übergeordneten Prozess an einen untergeordneten Prozess mithilfe von Named Pipes gesendet wird.The following example demonstrates a method to send a string from a parent process to a child process using named pipes. In diesem Beispiel wird ein NamedPipeServerStream-Objekt in einem übergeordneten Prozess erstellt.This example creates a NamedPipeServerStream object in a parent process. Dieses Objekt verfügt über einen PipeDirection Wert Out, der dann blockiert wird, bis ein NamedPipeClientStream-Objekt eine Verbindung mit dem NamedPipeServerStream Objekt herstellt.This object has a PipeDirection value of Out, which then blocks until a NamedPipeClientStream object establishes a connection to the NamedPipeServerStream object. Dieses Beispiel ist Teil eines größeren Beispiels, das für die Klassen NamedPipeServerStream und NamedPipeClientStream bereitgestellt wird.This example is part of a larger example provided for the NamedPipeServerStream and NamedPipeClientStream classes.

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

class PipeServer
{
    static void Main()
    {
        using (NamedPipeServerStream pipeServer =
            new NamedPipeServerStream("testpipe", PipeDirection.Out))
        {
            Console.WriteLine("NamedPipeServerStream object created.");

            // Wait for a client to connect
            Console.Write("Waiting for client connection...");
            pipeServer.WaitForConnection();

            Console.WriteLine("Client connected.");
            try
            {
                // Read user input and send that to the client process.
                using (StreamWriter sw = new StreamWriter(pipeServer))
                {
                    sw.AutoFlush = true;
                    Console.Write("Enter text: ");
                    sw.WriteLine(Console.ReadLine());
                }
            }
            // Catch the IOException that is raised if the pipe is broken
            // or disconnected.
            catch (IOException e)
            {
                Console.WriteLine("ERROR: {0}", e.Message);
            }
        }
    }
}
Imports System.IO
Imports System.IO.Pipes

Class PipeServer

    Shared Sub Main()
        Dim pipeServer As New NamedPipeServerStream("testpipe", PipeDirection.Out)

        Console.WriteLine("NamedPipeServerStream object created.")

        ' Wait for a client to connect
        Console.Write("Waiting for a client connection...")
        pipeServer.WaitForConnection()

        Console.WriteLine("Client connected.")
        Try
            'Read user input and send that to the client process.
            Dim sw As New StreamWriter(pipeServer)
            sw.AutoFlush = True
            Console.Write("Enter Text: ")
            sw.WriteLine(Console.ReadLine())
        Catch ex As IOException
            ' Catch the IOException that is raised if the pipe is broken
            ' or disconnected
            Console.WriteLine("ERROR: {0}", ex.Message)
        End Try
    End Sub
End Class

Hinweise

Wenn Sie diese Methode aufrufen, wird das NamedPipeServerStream Objekt blockiert, bis ein Client eine Verbindung herstellt.Calling this method causes the NamedPipeServerStream object to block until a client connects.

Gilt für: