Sdílet prostřednictvím


NamedPipeClientStream.Connect Metoda

Definice

Připojí se k čekající serveru.

Přetížení

Connect(TimeSpan)

Připojí se k čekající serveru v zadaném časovém limitu.

Connect()

Připojí se k čekajícímu serveru s nekonečnou hodnotou časového limitu.

Connect(Int32)

Připojí se k čekající serveru v zadaném časovém limitu.

Connect(TimeSpan)

Zdroj:
NamedPipeClientStream.cs
Zdroj:
NamedPipeClientStream.cs
Zdroj:
NamedPipeClientStream.cs

Připojí se k čekající serveru v zadaném časovém limitu.

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

Parametry

timeout
TimeSpan

Doba, kterou je potřeba počkat, než server odpoví, než vyprší časový limit připojení.

Poznámky

Viz Connect(Int32) poznámky.

Platí pro

Connect()

Zdroj:
NamedPipeClientStream.cs
Zdroj:
NamedPipeClientStream.cs
Zdroj:
NamedPipeClientStream.cs

Připojí se k čekajícímu serveru s nekonečnou hodnotou časového limitu.

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

Výjimky

Klient je již připojen.

Příklady

Následující příklad ukazuje metodu pro odeslání řetězce z nadřazeného procesu podřízeného procesu pomocí pojmenovaných kanálů. Tento příklad vytvoří NamedPipeClientStream objekt v podřízené procesu, který se pak připojí k kanálu v místním počítači. Příklad serveru lze vidět ve NamedPipeServerStream třídě . Tento příklad je součástí většího příkladu NamedPipeServerStream pro třídy a NamedPipeClientStream .

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

Poznámky

Tato metoda volá metodu Connect(Int32) s neomezenou hodnotou časového limitu.

Tato metoda čeká na zpřístupnění instance kanálu. Connect může vrátit před WaitForConnection je volána z objektu NamedPipeServerStream , ale WaitForConnection nevrátí se, dokud Connect se nevrátí.

Veškerá data zapsaná do kanálu po připojení objektu NamedPipeClientStream , ale ještě před voláním WaitForConnectionserveru , budou k dispozici serveru po volání WaitForConnectionmetody .

Platí pro

Connect(Int32)

Zdroj:
NamedPipeClientStream.cs
Zdroj:
NamedPipeClientStream.cs
Zdroj:
NamedPipeClientStream.cs

Připojí se k čekající serveru v zadaném časovém limitu.

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

Parametry

timeout
Int32

Počet milisekund, které mají čekat, než server odpoví, než vyprší časový limit připojení.

Atributy

Výjimky

Během zadaného timeout období se nelze připojit k serveru.

timeout je menší než 0 a není nastavená na Infinitehodnotu .

Klient je již připojen.

Server je připojený k jinému klientovi a vypršel časový limit.

Poznámky

Tato metoda čeká na zpřístupnění instance kanálu. Connect může vrátit před WaitForConnection je volána z NamedPipeServerStream, ale WaitForConnection nevrátí se, dokud Connect se nevrátí. Nastavením parametru timeout na hodnotu Infinite zadáte nekonečnou hodnotu časového limitu.

Veškerá data zapsaná do kanálu po připojení objektu NamedPipeClientStream , ale ještě před voláním WaitForConnectionserveru , budou k dispozici serveru po volání WaitForConnectionmetody .

Platí pro