NamedPipeClientStream.Connect Método

Definição

Liga-se a um servidor em espera.

Sobrecargas

Name Description
Connect()

Liga-se a um servidor em espera com um valor de time-out infinito.

Connect(Int32)

Liga-se a um servidor em espera dentro do período de tempo especificado.

Connect(TimeSpan)

Liga-se a um servidor em espera dentro do período de tempo especificado.

Connect()

Origem:
NamedPipeClientStream.cs
Origem:
NamedPipeClientStream.cs
Origem:
NamedPipeClientStream.cs
Origem:
NamedPipeClientStream.cs
Origem:
NamedPipeClientStream.cs

Liga-se a um servidor em espera com um valor de time-out infinito.

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

Exceções

O cliente já está ligado.

Exemplos

O exemplo seguinte demonstra um método para enviar uma string de um processo pai para um processo filho usando pipes nomeados. Este exemplo cria um NamedPipeClientStream objeto num processo filho, que depois se liga a um pipeline no computador local. O exemplo do servidor pode ser visto na NamedPipeServerStream aula. Este exemplo faz parte de um exemplo mais amplo fornecido para as NamedPipeServerStream classes e 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

Observações

Este método chama o Connect(Int32) método com um valor de time-out infinito.

Este método espera que uma instância de pipe fique disponível. Connect pode regressar antes WaitForConnection de ser chamado do NamedPipeServerStream objeto, mas WaitForConnection não retornará até Connect ter retornado.

Quaisquer dados escritos no pipeline após a ligação de um NamedPipeClientStream objeto, mas antes de o servidor ter chamado WaitForConnection, ficarão disponíveis para o servidor após a chamada para WaitForConnection.

Aplica-se a

Connect(Int32)

Origem:
NamedPipeClientStream.cs
Origem:
NamedPipeClientStream.cs
Origem:
NamedPipeClientStream.cs
Origem:
NamedPipeClientStream.cs
Origem:
NamedPipeClientStream.cs

Liga-se a um servidor em espera dentro do período de tempo especificado.

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)

Parâmetros

timeout
Int32

O número de milissegundos para esperar que o servidor responda antes de a ligação terminar.

Atributos

Exceções

Não consegui ligar-se ao servidor dentro do período especificado timeout .

timeout é menor que 0 e não está definido para Infinite.

O cliente já está ligado.

O servidor está ligado a outro cliente e o período de tempo expirou.

Observações

Este método espera que uma instância de pipe fique disponível. Connect pode regressar antes WaitForConnection de ser chamado do NamedPipeServerStream, mas WaitForConnection não retornará até Connect ter regressado. Define o timeout parâmetro para Infinite especificar um valor de tempo limite infinito.

Quaisquer dados escritos no pipeline após a ligação de um NamedPipeClientStream objeto, mas antes de o servidor ter chamado WaitForConnection, ficarão disponíveis para o servidor após a chamada para WaitForConnection.

Aplica-se a

Connect(TimeSpan)

Origem:
NamedPipeClientStream.cs
Origem:
NamedPipeClientStream.cs
Origem:
NamedPipeClientStream.cs
Origem:
NamedPipeClientStream.cs
Origem:
NamedPipeClientStream.cs

Liga-se a um servidor em espera dentro do período de tempo especificado.

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

Parâmetros

timeout
TimeSpan

O tempo a esperar que o servidor responda antes de a ligação expirar.

Observações

Ver Connect(Int32) observações.

Aplica-se a