NamedPipeServerStream.WaitForConnection Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
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.