NamedPipeClientStream.NumberOfServerInstances Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft die Anzahl von Serverinstanzen mit dem gleichen Pipenamen ab.
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
Eigenschaftswert
Die Anzahl von Serverinstanzen mit dem gleichen Pipenamen.
- Attribute
Ausnahmen
Das Pipehandle wurde nicht festgelegt.
- oder -
Das aktuelle NamedPipeClientStream-Objekt hat noch keine Verbindung mit einem NamedPipeServerStream-Objekt hergestellt.
Die Pipe wurde unterbrochen, oder es ist ein E/A-Fehler aufgetreten.
Das zugrunde liegende Pipehandle wird geschlossen.
Beispiele
Das folgende Beispiel veranschaulicht eine Methode zum Senden einer Zeichenfolge von einem übergeordneten Prozess an einen untergeordneten Prozess mithilfe von Named Pipes. In diesem Beispiel wird ein NamedPipeClientStream Objekt in einem untergeordneten Prozess erstellt, der dann eine Verbindung mit einer Pipe auf dem lokalen Computer herstellt. Das Serverbeispiel ist in der NamedPipeServerStream -Klasse zu sehen. Dieses Beispiel ist Teil eines größeren Beispiels, das für die NamedPipeServerStream Klassen und NamedPipeClientStream bereitgestellt wird.
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
Hinweise
Diese Eigenschaft gibt die Anzahl der Serverinstanzen für das NamedPipeServerStream Objekt zurück, mit dem das aktuelle NamedPipeClientStream Objekt über ein Handle verfügt oder mit dem verbunden ist. Wenn das aktuelle NamedPipeClientStream Objekt noch nicht mit einem Named Pipe-Server verbunden ist oder das aktuelle Pipehandle noch nicht festgelegt wurde, löst diese Eigenschaft einen aus InvalidOperationException.