NamedPipeServerStream.WaitForConnection Methode

Definitie

Wacht tot een client verbinding maakt met dit NamedPipeServerStream object.

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

Uitzonderingen

Er is al een pijpverbinding tot stand gebracht.

– of –

De pijpgreep is niet ingesteld.

De pijp is gesloten.

De pijpverbinding is verbroken.

Voorbeelden

In het volgende voorbeeld ziet u een methode voor het verzenden van een tekenreeks van een bovenliggend proces naar een onderliggend proces met behulp van benoemde pijpen. In dit voorbeeld wordt een NamedPipeServerStream object gemaakt in een bovenliggend proces. Dit object heeft een PipeDirection waarde van Out, die vervolgens wordt geblokkeerd totdat een NamedPipeClientStream object een verbinding met het NamedPipeServerStream object tot stand brengt. Dit voorbeeld maakt deel uit van een groter voorbeeld voor de NamedPipeServerStream en NamedPipeClientStream klassen.

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

Opmerkingen

Als u deze methode aanroept, wordt het NamedPipeServerStream object geblokkeerd totdat een client verbinding maakt.

Van toepassing op