NamedPipeClientStream.Connect Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Connects to a waiting server.
Overloads
Connect(TimeSpan) |
Connects to a waiting server within the specified timeout period. |
Connect() |
Connects to a waiting server with an infinite time-out value. |
Connect(Int32) |
Connects to a waiting server within the specified time-out period. |
Connect(TimeSpan)
- Source:
- NamedPipeClientStream.cs
- Source:
- NamedPipeClientStream.cs
- Source:
- NamedPipeClientStream.cs
Connects to a waiting server within the specified timeout period.
public:
void Connect(TimeSpan timeout);
public void Connect (TimeSpan timeout);
member this.Connect : TimeSpan -> unit
Public Sub Connect (timeout As TimeSpan)
Parameters
- timeout
- TimeSpan
The amount of time to wait for the server to respond before the connection times out.
Remarks
See Connect(Int32) remarks.
Applies to
Connect()
- Source:
- NamedPipeClientStream.cs
- Source:
- NamedPipeClientStream.cs
- Source:
- NamedPipeClientStream.cs
Connects to a waiting server with an infinite time-out value.
public:
void Connect();
public void Connect ();
member this.Connect : unit -> unit
Public Sub Connect ()
Exceptions
The client is already connected.
Examples
The following example demonstrates a method to send a string from a parent process to a child process using named pipes. This example creates a NamedPipeClientStream object in a child process, which then connects to a pipe on the local computer. The server example can be seen in the NamedPipeServerStream class. This example is part of a larger example provided for the NamedPipeServerStream and NamedPipeClientStream classes.
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
Remarks
This method calls the Connect(Int32) method with an infinite time-out value.
This method waits for a pipe instance to become available. Connect might return before WaitForConnection is called from the NamedPipeServerStream object, but WaitForConnection will not return until Connect has returned.
Any data written to the pipe after a NamedPipeClientStream object has connected, but before the server has called WaitForConnection, will be available to the server following the call to WaitForConnection.
Applies to
Connect(Int32)
- Source:
- NamedPipeClientStream.cs
- Source:
- NamedPipeClientStream.cs
- Source:
- NamedPipeClientStream.cs
Connects to a waiting server within the specified time-out period.
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)
Parameters
- timeout
- Int32
The number of milliseconds to wait for the server to respond before the connection times out.
- Attributes
Exceptions
Could not connect to the server within the specified timeout
period.
timeout
is less than 0 and not set to Infinite.
The client is already connected.
The server is connected to another client and the time-out period has expired.
Remarks
This method waits for a pipe instance to become available. Connect might return before WaitForConnection is called from the NamedPipeServerStream, but WaitForConnection will not return until Connect has returned. You set the timeout
parameter to Infinite to specify an infinite time-out value.
Any data written to the pipe after a NamedPipeClientStream object has connected, but before the server has called WaitForConnection, will be available to the server following the call to WaitForConnection.