NamedPipeClientStream.Connect Methode

Definitie

Maakt verbinding met een wachtserver.

Overloads

Name Description
Connect()

Maakt verbinding met een wachtserver met een oneindige time-outwaarde.

Connect(Int32)

Maakt verbinding met een wachtserver binnen de opgegeven time-outperiode.

Connect()

Maakt verbinding met een wachtserver met een oneindige time-outwaarde.

public:
 void Connect();
public void Connect();
member this.Connect : unit -> unit
Public Sub Connect ()

Uitzonderingen

De client is al verbonden.

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 NamedPipeClientStream object gemaakt in een onderliggend proces, dat vervolgens verbinding maakt met een pipe op de lokale computer. Het servervoorbeeld is te zien in de NamedPipeServerStream klasse. 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 PipeClient
{
    static void Main(string[] args)
    {
        using (NamedPipeClientStream pipeClient =
            new NamedPipeClientStream(".", "testpipe", PipeDirection.In))
        {

            // Connect to the pipe or wait until the pipe is available.
            Console.Write("Attempting to connect to pipe...");
            pipeClient.Connect();

            Console.WriteLine("Connected to pipe.");
            Console.WriteLine("There are currently {0} pipe server instances open.",
               pipeClient.NumberOfServerInstances);
            using (StreamReader sr = new StreamReader(pipeClient))
            {
                // Display the read text to the console
                string temp;
                while ((temp = sr.ReadLine()) != null)
                {
                    Console.WriteLine("Received from server: {0}", temp);
                }
            }
        }
        Console.Write("Press Enter to continue...");
        Console.ReadLine();
    }
}
Imports System.IO
Imports System.IO.Pipes
Imports System.Security.Principal

Class PipeClient

    Shared Sub Main(ByVal args As String())

        Dim pipeClient As New NamedPipeClientStream("localhost", _
                    "testpipe", PipeDirection.In, PipeOptions.None)

        ' Connect to the pipe or wait until the pipe is available.
        Console.WriteLine("Attempting to connect to the pipe...")
        pipeClient.Connect()

        Console.WriteLine("Connect to the pipe.")
        Console.WriteLine("There are currently {0} pipe server instances open.", _
                          pipeClient.NumberOfServerInstances)

        Dim sr As New StreamReader(pipeClient)
        Dim temp As String

        temp = sr.ReadLine()
        While Not temp Is Nothing
            Console.WriteLine("Received from server: {0}", temp)
            temp = sr.ReadLine()
        End While
        Console.Write("Press Enter to continue...")
        Console.ReadLine()
    End Sub
End Class

Opmerkingen

Met deze methode wordt de Connect(Int32) methode aangeroepen met een oneindige time-outwaarde.

Deze methode wacht totdat een pijpexemplaren beschikbaar zijn. Connect kan retourneren voordat WaitForConnection het object NamedPipeServerStream wordt aangeroepen, maar WaitForConnection wordt pas geretourneerd als Connect het object is geretourneerd.

Alle gegevens die naar de pijp worden geschreven nadat een NamedPipeClientStream object is verbonden, maar voordat de server is aangeroepen WaitForConnection, beschikbaar zijn voor de server na de aanroep naar WaitForConnection.

Van toepassing op

Connect(Int32)

Maakt verbinding met een wachtserver binnen de opgegeven time-outperiode.

public:
 void Connect(int timeout);
[System.Security.SecurityCritical]
public void Connect(int timeout);
public void Connect(int timeout);
[<System.Security.SecurityCritical>]
member this.Connect : int -> unit
member this.Connect : int -> unit
Public Sub Connect (timeout As Integer)

Parameters

timeout
Int32

Het aantal milliseconden dat moet worden gewacht totdat de server reageert voordat er een time-out optreedt voor de verbinding.

Kenmerken

Uitzonderingen

Kan geen verbinding maken met de server binnen de opgegeven timeout periode.

timeout is kleiner dan 0 en niet ingesteld op Infinite.

De client is al verbonden.

De server is verbonden met een andere client en de time-outperiode is verlopen.

Opmerkingen

Deze methode wacht totdat een pijpexemplaren beschikbaar zijn. Connect kan retourneren voordat WaitForConnection wordt aangeroepen vanuit de NamedPipeServerStream, maar WaitForConnection zal niet retourneren totdat Connect is geretourneerd. U stelt de timeout parameter in om Infinite een oneindige time-outwaarde op te geven.

Alle gegevens die naar de pijp worden geschreven nadat een NamedPipeClientStream object is verbonden, maar voordat de server is aangeroepen WaitForConnection, beschikbaar zijn voor de server na de aanroep naar WaitForConnection.

Van toepassing op