Partager via


NamedPipeClientStream.Connect Méthode

Définition

Se connecte à un serveur en attente.

Surcharges

Connect(TimeSpan)

Se connecte à un serveur en attente dans le délai spécifié.

Connect()

Se connecte à un serveur en attente avec une valeur de délai d'attente infinie.

Connect(Int32)

Se connecte à un serveur en attente dans le délai d'attente spécifié.

Connect(TimeSpan)

Source:
NamedPipeClientStream.cs
Source:
NamedPipeClientStream.cs
Source:
NamedPipeClientStream.cs

Se connecte à un serveur en attente dans le délai spécifié.

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

Paramètres

timeout
TimeSpan

Délai d’attente pour que le serveur réponde avant l’expiration de la connexion.

Remarques

Voir Connect(Int32) les remarques.

S’applique à

Connect()

Source:
NamedPipeClientStream.cs
Source:
NamedPipeClientStream.cs
Source:
NamedPipeClientStream.cs

Se connecte à un serveur en attente avec une valeur de délai d'attente infinie.

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

Exceptions

Le client est déjà connecté.

Exemples

L’exemple suivant illustre une méthode permettant d’envoyer une chaîne d’un processus parent à un processus enfant à l’aide de canaux nommés. Cet exemple crée un NamedPipeClientStream objet dans un processus enfant, qui se connecte ensuite à un canal sur l’ordinateur local. L’exemple de serveur peut être vu dans la NamedPipeServerStream classe . Cet exemple fait partie d’un exemple plus grand fourni pour les NamedPipeServerStream classes et 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

Remarques

Cette méthode appelle la Connect(Int32) méthode avec une valeur de délai d’attente infini.

Cette méthode attend qu’un instance de canal soit disponible. Connect peut retourner avant WaitForConnection est appelé à partir de l’objet NamedPipeServerStream , mais WaitForConnection ne retourne pas tant que n’a Connect pas retourné.

Toutes les données écrites dans le canal après la connexion d’un NamedPipeClientStream objet, mais avant que le serveur ait appelé WaitForConnection, seront disponibles pour le serveur après l’appel à WaitForConnection.

S’applique à

Connect(Int32)

Source:
NamedPipeClientStream.cs
Source:
NamedPipeClientStream.cs
Source:
NamedPipeClientStream.cs

Se connecte à un serveur en attente dans le délai d'attente spécifié.

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)

Paramètres

timeout
Int32

Durée d'attente de la réponse du serveur avant l'expiration de la connexion, exprimée en nombre de millisecondes.

Attributs

Exceptions

N’a pas pu se connecter au serveur dans la période de timeout spécifiée.

timeout est inférieur à 0 et n’a pas la valeur Infinite.

Le client est déjà connecté.

Le serveur est connecté à un autre client et le délai d’attente a expiré.

Remarques

Cette méthode attend qu’un instance de canal soit disponible. Connect peut revenir avant WaitForConnection est appelé à partir de NamedPipeServerStream, mais WaitForConnection ne retourne pas tant que n’a Connect pas retourné. Vous définissez le timeout paramètre sur Infinite pour spécifier une valeur de délai d’attente infini.

Toutes les données écrites dans le canal après la connexion d’un NamedPipeClientStream objet, mais avant que le serveur ait appelé WaitForConnection, seront disponibles pour le serveur après l’appel à WaitForConnection.

S’applique à