語言

NamedPipeClientStream.NumberOfServerInstances 屬性

定義

會取得共用相同管道名稱的伺服器實例數量。

public:
 property int NumberOfServerInstances { int get(); };
[System.Runtime.Versioning.SupportedOSPlatform("windows")]
public int NumberOfServerInstances { get; }
public int NumberOfServerInstances { get; }
public int NumberOfServerInstances { [System.Security.SecurityCritical] get; }
[<System.Runtime.Versioning.SupportedOSPlatform("windows")>]
member this.NumberOfServerInstances : int
member this.NumberOfServerInstances : int
[<get: System.Security.SecurityCritical>]
member this.NumberOfServerInstances : int
Public ReadOnly Property NumberOfServerInstances As Integer

屬性值

共用相同管線名稱的伺服器實例數量。

屬性

例外狀況

管柄還沒調整好。

-或-

目前 NamedPipeClientStream 的物體尚未連接到任何 NamedPipeServerStream 物體。

管線斷裂或發生 I/O 錯誤。

底下的管柄是封閉的。

範例

以下範例示範一種方法,利用命名管道將字串從父程序傳送到子程序。 在此範例中, 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

備註

此屬性回 NamedPipeServerStream 傳該物件目前擁有句柄或連接的伺服器 NamedPipeClientStream 實例數量。 如果目前 NamedPipeClientStream 物件尚未連接到命名管線伺服器,或目前管線處理手柄尚未設定,這個屬性會拋出一個 InvalidOperationException。

適用於