Questo articolo è stato tradotto automaticamente. Per visualizzare l'articolo in inglese, selezionare la casella di controllo Inglese. È possibile anche visualizzare il testo inglese in una finestra popup posizionando il puntatore del mouse sopra il testo.
Traduzione
Inglese

Metodo NamedPipeClientStream.Connect ()

 

Data di pubblicazione: ottobre 2016

Si connette a un server in attesa con un valore di timeout infinito.

Spazio dei nomi:   System.IO.Pipes
Assembly:  System.Core (in System.Core.dll)

public void Connect()

Exception Condition
InvalidOperationException

Il client è già connesso.

Questo metodo chiama il Connect(Int32) metodo con un valore di timeout infinito.

Questo metodo attende per un'istanza di pipe diventi disponibile. Connect potrebbe restituire prima WaitForConnection viene chiamato dal NamedPipeServerStream oggetto, ma WaitForConnection non verrà restituito finché non Connect ha restituito.

I dati scritti nella pipe dopo un NamedPipeClientStream è collegato l'oggetto, ma prima della chiamata di WaitForConnection, saranno disponibili per il server dopo la chiamata a WaitForConnection.

Nell'esempio seguente viene illustrato un metodo per inviare una stringa da un processo padre a un processo figlio utilizzando named pipe. Questo esempio viene creato un NamedPipeClientStream oggetto in un processo figlio, che quindi si connette a una pipe nel computer locale. Nell'esempio di server può essere visualizzato nella NamedPipeServerStream classe. In questo esempio fa parte di un esempio più esaustivo fornito per il NamedPipeServerStream e NamedPipeClientStream classi.

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();
    }
}

.NET Framework
Disponibile da 3.5
Torna all'inizio
Mostra: