NamedPipeClientStream.Connect 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
连接到等待的服务器。
重载
Connect(TimeSpan) |
在指定的超时期限内连接到等待的服务器。 |
Connect() |
连接到具有无限超时值的等待的服务器。 |
Connect(Int32) |
在指定的超时期间内连接到等待的服务器。 |
Connect(TimeSpan)
- Source:
- NamedPipeClientStream.cs
- Source:
- NamedPipeClientStream.cs
- Source:
- NamedPipeClientStream.cs
在指定的超时期限内连接到等待的服务器。
public:
void Connect(TimeSpan timeout);
public void Connect (TimeSpan timeout);
member this.Connect : TimeSpan -> unit
Public Sub Connect (timeout As TimeSpan)
参数
- timeout
- TimeSpan
在连接超时之前等待服务器响应的时间。
注解
请参阅 Connect(Int32) 备注。
适用于
Connect()
- Source:
- NamedPipeClientStream.cs
- Source:
- NamedPipeClientStream.cs
- Source:
- NamedPipeClientStream.cs
连接到具有无限超时值的等待的服务器。
public:
void Connect();
public void Connect ();
member this.Connect : unit -> unit
Public Sub Connect ()
例外
已连接客户端。
示例
以下示例演示了一种使用命名管道将字符串从父进程发送到子进程的方法。 此示例在子进程中创建一个 NamedPipeClientStream 对象,然后该对象连接到本地计算机上的管道。 可以在 类中看到 NamedPipeServerStream 服务器示例。 此示例是为 NamedPipeServerStream 和 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
注解
此方法调用 Connect(Int32) 具有无限超时值的方法。
此方法等待管道实例变得可用。 Connect可能在从 NamedPipeServerStream 对象调用 之前WaitForConnection返回 ,但在WaitForConnection返回之前Connect不会返回。
在 对象连接之后、服务器调用 WaitForConnection之前NamedPipeClientStream写入管道的任何数据都将在调用 WaitForConnection后可供服务器使用。
适用于
Connect(Int32)
- Source:
- NamedPipeClientStream.cs
- Source:
- NamedPipeClientStream.cs
- Source:
- NamedPipeClientStream.cs
在指定的超时期间内连接到等待的服务器。
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)
参数
- timeout
- Int32
在连接超时之前等待服务器响应的毫秒数。
- 属性
例外
未能在指定的 timeout
时期内连接到服务器。
timeout
小于 0 且未设置为 Infinite。
已连接客户端。
服务器连接至其他客户端并且超时期间已过期。
注解
此方法等待管道实例变得可用。 Connect可能在 从 调用 之前WaitForConnection返回 ,但在WaitForConnection返回之前Connect不会NamedPipeServerStream返回。 将 参数Infinite设置为 timeout
以指定无限超时值。
在 对象连接之后、服务器调用 WaitForConnection之前NamedPipeClientStream写入管道的任何数据都将在调用 WaitForConnection后可供服务器使用。