AnonymousPipeServerStream Konstruktoren
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.
Initialisiert eine neue Instanz der AnonymousPipeServerStream-Klasse.
Überlädt
AnonymousPipeServerStream() |
Initialisiert eine neue Instanz der AnonymousPipeServerStream-Klasse. |
AnonymousPipeServerStream(PipeDirection) |
Initialisiert eine neue Instanz der AnonymousPipeServerStream-Klasse mit der angegebenen Piperichtung. |
AnonymousPipeServerStream(PipeDirection, HandleInheritability) |
Initialisiert eine neue Instanz der AnonymousPipeServerStream-Klasse mit der angegebenen Piperichtung und dem angegebenen Vererbbarkeitsmodus. |
AnonymousPipeServerStream(PipeDirection, SafePipeHandle, SafePipeHandle) |
Initialisiert eine neue Instanz der AnonymousPipeServerStream-Klasse aus den angegebenen Pipehandles. |
AnonymousPipeServerStream(PipeDirection, HandleInheritability, Int32) |
Initialisiert eine neue Instanz der AnonymousPipeServerStream-Klasse mit der angegebenen Piperichtung, dem angegebenen Vererbbarkeitsmodus und der angegebenen Puffergröße. |
AnonymousPipeServerStream(PipeDirection, HandleInheritability, Int32, PipeSecurity) |
Initialisiert eine neue Instanz der AnonymousPipeServerStream-Klasse mit der angegebenen Piperichtung, dem angegebenen Vererbbarkeitsmodus, der angegebenen Puffergröße und der angegebenen Pipesicherheit. |
AnonymousPipeServerStream()
- Quelle:
- AnonymousPipeServerStream.cs
- Quelle:
- AnonymousPipeServerStream.cs
- Quelle:
- AnonymousPipeServerStream.cs
Initialisiert eine neue Instanz der AnonymousPipeServerStream-Klasse.
public:
AnonymousPipeServerStream();
public AnonymousPipeServerStream ();
Public Sub New ()
Hinweise
Für AnonymousPipeServerStream Konstruktoren ohne Parameter PipeDirection ist Outdie Standardrichtung . Ein PipeDirection Wert von InOut wird nicht unterstützt, da anonyme Pipes als unidirektional definiert sind.
Dieser Konstruktor erstellt ein AnonymousPipeServerStream -Objekt, das die Standardpuffergröße, keine Pipesicherheit und den HandleInheritability Wert aufweist None.
Gilt für:
AnonymousPipeServerStream(PipeDirection)
- Quelle:
- AnonymousPipeServerStream.cs
- Quelle:
- AnonymousPipeServerStream.cs
- Quelle:
- AnonymousPipeServerStream.cs
Initialisiert eine neue Instanz der AnonymousPipeServerStream-Klasse mit der angegebenen Piperichtung.
public:
AnonymousPipeServerStream(System::IO::Pipes::PipeDirection direction);
public AnonymousPipeServerStream (System.IO.Pipes.PipeDirection direction);
new System.IO.Pipes.AnonymousPipeServerStream : System.IO.Pipes.PipeDirection -> System.IO.Pipes.AnonymousPipeServerStream
Public Sub New (direction As PipeDirection)
Parameter
- direction
- PipeDirection
Einer der Enumerationswerte, der die Richtung der Pipe bestimmt.
Anonyme Pipes dürfen nur eine Richtung aufweisen, daher kann direction
nicht auf InOut festgelegt werden.
Ausnahmen
Für direction
ist InOut festgelegt.
Hinweise
Ein PipeDirection Wert von InOut wird nicht unterstützt, da anonyme Pipes als unidirektional definiert sind.
Dieser Konstruktor erstellt ein AnonymousPipeServerStream -Objekt, das die Standardpuffergröße, keine Pipesicherheit und den HandleInheritability Wert aufweist None.
Gilt für:
AnonymousPipeServerStream(PipeDirection, HandleInheritability)
- Quelle:
- AnonymousPipeServerStream.cs
- Quelle:
- AnonymousPipeServerStream.cs
- Quelle:
- AnonymousPipeServerStream.cs
Initialisiert eine neue Instanz der AnonymousPipeServerStream-Klasse mit der angegebenen Piperichtung und dem angegebenen Vererbbarkeitsmodus.
public:
AnonymousPipeServerStream(System::IO::Pipes::PipeDirection direction, System::IO::HandleInheritability inheritability);
public AnonymousPipeServerStream (System.IO.Pipes.PipeDirection direction, System.IO.HandleInheritability inheritability);
new System.IO.Pipes.AnonymousPipeServerStream : System.IO.Pipes.PipeDirection * System.IO.HandleInheritability -> System.IO.Pipes.AnonymousPipeServerStream
Public Sub New (direction As PipeDirection, inheritability As HandleInheritability)
Parameter
- direction
- PipeDirection
Einer der Enumerationswerte, der die Richtung der Pipe bestimmt.
Anonyme Pipes dürfen nur eine Richtung aufweisen, daher kann direction
nicht auf InOut festgelegt werden.
- inheritability
- HandleInheritability
Einer der Enumerationswerte, der bestimmt, ob das zugrunde liegende Handle von untergeordneten Prozessen geerbt werden kann. Muss entweder auf None oder auf Inheritable festgelegt sein.
Ausnahmen
inheritability
ist nicht auf None oder Inheritable festgelegt.
Für direction
ist InOut festgelegt.
Beispiele
Das folgende Beispiel veranschaulicht eine Methode zum Senden einer Zeichenfolge aus einem übergeordneten Prozess an einen untergeordneten Prozess mithilfe anonymer Pipes. In diesem Beispiel wird ein AnonymousPipeServerStream -Objekt in einem übergeordneten Prozess mit dem PipeDirection Wert Outerstellt.
//<snippet01>
#using <System.dll>
#using <System.Core.dll>
using namespace System;
using namespace System::IO;
using namespace System::IO::Pipes;
using namespace System::Diagnostics;
ref class PipeServer
{
public:
static void Main()
{
Process^ pipeClient = gcnew Process();
pipeClient->StartInfo->FileName = "pipeClient.exe";
AnonymousPipeServerStream^ pipeServer =
gcnew AnonymousPipeServerStream(PipeDirection::Out,
HandleInheritability::Inheritable);
Console::WriteLine("[SERVER] Current TransmissionMode: {0}.",
pipeServer->TransmissionMode);
// Pass the client process a handle to the server.
pipeClient->StartInfo->Arguments =
pipeServer->GetClientHandleAsString();
pipeClient->StartInfo->UseShellExecute = false;
pipeClient->Start();
pipeServer->DisposeLocalCopyOfClientHandle();
try
{
// Read user input and send that to the client process.
StreamWriter^ sw = gcnew StreamWriter(pipeServer);
sw->AutoFlush = true;
// Send a 'sync message' and wait for client to receive it.
sw->WriteLine("SYNC");
pipeServer->WaitForPipeDrain();
// Send the console input to the client process.
Console::Write("[SERVER] Enter text: ");
sw->WriteLine(Console::ReadLine());
sw->Close();
}
// Catch the IOException that is raised if the pipe is broken
// or disconnected.
catch (IOException^ e)
{
Console::WriteLine("[SERVER] Error: {0}", e->Message);
}
pipeServer->Close();
pipeClient->WaitForExit();
pipeClient->Close();
Console::WriteLine("[SERVER] Client quit. Server terminating.");
}
};
int main()
{
PipeServer::Main();
}
//</snippet01>
//<snippet01>
using System;
using System.IO;
using System.IO.Pipes;
using System.Diagnostics;
class PipeServer
{
static void Main()
{
Process pipeClient = new Process();
pipeClient.StartInfo.FileName = "pipeClient.exe";
using (AnonymousPipeServerStream pipeServer =
new AnonymousPipeServerStream(PipeDirection.Out,
HandleInheritability.Inheritable))
{
Console.WriteLine("[SERVER] Current TransmissionMode: {0}.",
pipeServer.TransmissionMode);
// Pass the client process a handle to the server.
pipeClient.StartInfo.Arguments =
pipeServer.GetClientHandleAsString();
pipeClient.StartInfo.UseShellExecute = false;
pipeClient.Start();
pipeServer.DisposeLocalCopyOfClientHandle();
try
{
// Read user input and send that to the client process.
using (StreamWriter sw = new StreamWriter(pipeServer))
{
sw.AutoFlush = true;
// Send a 'sync message' and wait for client to receive it.
sw.WriteLine("SYNC");
pipeServer.WaitForPipeDrain();
// Send the console input to the client process.
Console.Write("[SERVER] Enter text: ");
sw.WriteLine(Console.ReadLine());
}
}
// Catch the IOException that is raised if the pipe is broken
// or disconnected.
catch (IOException e)
{
Console.WriteLine("[SERVER] Error: {0}", e.Message);
}
}
pipeClient.WaitForExit();
pipeClient.Close();
Console.WriteLine("[SERVER] Client quit. Server terminating.");
}
}
//</snippet01>
'<snippet01>
Imports System.IO
Imports System.IO.Pipes
Imports System.Diagnostics
Class PipeServer
Shared Sub Main()
Dim pipeClient As New Process()
pipeClient.StartInfo.FileName = "pipeClient.exe"
Using pipeServer As New AnonymousPipeServerStream(PipeDirection.Out, _
HandleInheritability.Inheritable)
Console.WriteLine("[SERVER] Current TransmissionMode: {0}.",
pipeServer.TransmissionMode)
' Pass the client process a handle to the server.
pipeClient.StartInfo.Arguments = pipeServer.GetClientHandleAsString()
pipeClient.StartInfo.UseShellExecute = false
pipeClient.Start()
pipeServer.DisposeLocalCopyOfClientHandle()
Try
' Read user input and send that to the client process.
Using sw As New StreamWriter(pipeServer)
sw.AutoFlush = true
' Send a 'sync message' and wait for client to receive it.
sw.WriteLine("SYNC")
pipeServer.WaitForPipeDrain()
' Send the console input to the client process.
Console.Write("[SERVER] Enter text: ")
sw.WriteLine(Console.ReadLine())
End Using
Catch e As IOException
' Catch the IOException that is raised if the pipe is broken
' or disconnected.
Console.WriteLine("[SERVER] Error: {0}", e.Message)
End Try
End Using
pipeClient.WaitForExit()
pipeClient.Close()
Console.WriteLine("[SERVER] Client quit. Server terminating.")
End Sub
End Class
'</snippet01>
Hinweise
Ein PipeDirection Wert von InOut wird nicht unterstützt, da anonyme Pipes als unidirektional definiert sind.
Dieser Konstruktor erstellt ein AnonymousPipeServerStream Objekt, das über die Standardpuffergröße und keine Pipesicherheit verfügt.
Gilt für:
AnonymousPipeServerStream(PipeDirection, SafePipeHandle, SafePipeHandle)
- Quelle:
- AnonymousPipeServerStream.cs
- Quelle:
- AnonymousPipeServerStream.cs
- Quelle:
- AnonymousPipeServerStream.cs
Initialisiert eine neue Instanz der AnonymousPipeServerStream-Klasse aus den angegebenen Pipehandles.
public:
AnonymousPipeServerStream(System::IO::Pipes::PipeDirection direction, Microsoft::Win32::SafeHandles::SafePipeHandle ^ serverSafePipeHandle, Microsoft::Win32::SafeHandles::SafePipeHandle ^ clientSafePipeHandle);
public AnonymousPipeServerStream (System.IO.Pipes.PipeDirection direction, Microsoft.Win32.SafeHandles.SafePipeHandle serverSafePipeHandle, Microsoft.Win32.SafeHandles.SafePipeHandle clientSafePipeHandle);
[System.Security.SecurityCritical]
public AnonymousPipeServerStream (System.IO.Pipes.PipeDirection direction, Microsoft.Win32.SafeHandles.SafePipeHandle serverSafePipeHandle, Microsoft.Win32.SafeHandles.SafePipeHandle clientSafePipeHandle);
new System.IO.Pipes.AnonymousPipeServerStream : System.IO.Pipes.PipeDirection * Microsoft.Win32.SafeHandles.SafePipeHandle * Microsoft.Win32.SafeHandles.SafePipeHandle -> System.IO.Pipes.AnonymousPipeServerStream
[<System.Security.SecurityCritical>]
new System.IO.Pipes.AnonymousPipeServerStream : System.IO.Pipes.PipeDirection * Microsoft.Win32.SafeHandles.SafePipeHandle * Microsoft.Win32.SafeHandles.SafePipeHandle -> System.IO.Pipes.AnonymousPipeServerStream
Public Sub New (direction As PipeDirection, serverSafePipeHandle As SafePipeHandle, clientSafePipeHandle As SafePipeHandle)
Parameter
- direction
- PipeDirection
Einer der Enumerationswerte, der die Richtung der Pipe bestimmt.
Anonyme Pipes dürfen nur eine Richtung aufweisen, daher kann direction
nicht auf InOut festgelegt werden.
- serverSafePipeHandle
- SafePipeHandle
Ein sicheres Handle für die Pipe, die von diesem AnonymousPipeServerStream-Objekt gekapselt wird.
- clientSafePipeHandle
- SafePipeHandle
Ein sicheres Handle für das AnonymousPipeClientStream-Objekt.
- Attribute
Ausnahmen
serverSafePipeHandle
oder clientSafePipeHandle
ist ein ungültiges Handle.
serverSafePipeHandle
oder clientSafePipeHandle
ist null
.
Für direction
ist InOut festgelegt.
Es ist ein E/A-Fehler aufgetreten, beispielsweise ein Datenträgerfehler.
- oder -
Der Stream wurde geschlossen.
Hinweise
Ein PipeDirection Wert von InOut wird nicht unterstützt, da anonyme Pipes als unidirektional definiert sind.
Gilt für:
AnonymousPipeServerStream(PipeDirection, HandleInheritability, Int32)
- Quelle:
- AnonymousPipeServerStream.cs
- Quelle:
- AnonymousPipeServerStream.cs
- Quelle:
- AnonymousPipeServerStream.cs
Initialisiert eine neue Instanz der AnonymousPipeServerStream-Klasse mit der angegebenen Piperichtung, dem angegebenen Vererbbarkeitsmodus und der angegebenen Puffergröße.
public:
AnonymousPipeServerStream(System::IO::Pipes::PipeDirection direction, System::IO::HandleInheritability inheritability, int bufferSize);
public AnonymousPipeServerStream (System.IO.Pipes.PipeDirection direction, System.IO.HandleInheritability inheritability, int bufferSize);
[System.Security.SecurityCritical]
public AnonymousPipeServerStream (System.IO.Pipes.PipeDirection direction, System.IO.HandleInheritability inheritability, int bufferSize);
new System.IO.Pipes.AnonymousPipeServerStream : System.IO.Pipes.PipeDirection * System.IO.HandleInheritability * int -> System.IO.Pipes.AnonymousPipeServerStream
[<System.Security.SecurityCritical>]
new System.IO.Pipes.AnonymousPipeServerStream : System.IO.Pipes.PipeDirection * System.IO.HandleInheritability * int -> System.IO.Pipes.AnonymousPipeServerStream
Public Sub New (direction As PipeDirection, inheritability As HandleInheritability, bufferSize As Integer)
Parameter
- direction
- PipeDirection
Einer der Enumerationswerte, der die Richtung der Pipe bestimmt.
Anonyme Pipes dürfen nur eine Richtung aufweisen, daher kann direction
nicht auf InOut festgelegt werden.
- inheritability
- HandleInheritability
Einer der Enumerationswerte, der bestimmt, ob das zugrunde liegende Handle von untergeordneten Prozessen geerbt werden kann. Muss entweder auf None oder auf Inheritable festgelegt sein.
- bufferSize
- Int32
Die Größe des Puffers. Dieser Wert muss größer oder gleich 0 sein.
- Attribute
Ausnahmen
inheritability
ist nicht auf None oder Inheritable festgelegt.
- oder -
bufferSize
ist kleiner als 0.
Für direction
ist InOut festgelegt.
Hinweise
Ein PipeDirection Wert von InOut wird nicht unterstützt, da anonyme Pipes als unidirektional definiert sind.
Dieser Konstruktor erstellt ein AnonymousPipeServerStream Objekt ohne Pipesicherheit.
Gilt für:
AnonymousPipeServerStream(PipeDirection, HandleInheritability, Int32, PipeSecurity)
Initialisiert eine neue Instanz der AnonymousPipeServerStream-Klasse mit der angegebenen Piperichtung, dem angegebenen Vererbbarkeitsmodus, der angegebenen Puffergröße und der angegebenen Pipesicherheit.
public:
AnonymousPipeServerStream(System::IO::Pipes::PipeDirection direction, System::IO::HandleInheritability inheritability, int bufferSize, System::IO::Pipes::PipeSecurity ^ pipeSecurity);
[System.Security.SecurityCritical]
public AnonymousPipeServerStream (System.IO.Pipes.PipeDirection direction, System.IO.HandleInheritability inheritability, int bufferSize, System.IO.Pipes.PipeSecurity pipeSecurity);
public AnonymousPipeServerStream (System.IO.Pipes.PipeDirection direction, System.IO.HandleInheritability inheritability, int bufferSize, System.IO.Pipes.PipeSecurity pipeSecurity);
[<System.Security.SecurityCritical>]
new System.IO.Pipes.AnonymousPipeServerStream : System.IO.Pipes.PipeDirection * System.IO.HandleInheritability * int * System.IO.Pipes.PipeSecurity -> System.IO.Pipes.AnonymousPipeServerStream
new System.IO.Pipes.AnonymousPipeServerStream : System.IO.Pipes.PipeDirection * System.IO.HandleInheritability * int * System.IO.Pipes.PipeSecurity -> System.IO.Pipes.AnonymousPipeServerStream
Public Sub New (direction As PipeDirection, inheritability As HandleInheritability, bufferSize As Integer, pipeSecurity As PipeSecurity)
Parameter
- direction
- PipeDirection
Einer der Enumerationswerte, der die Richtung der Pipe bestimmt.
Anonyme Pipes dürfen nur eine Richtung aufweisen, daher kann direction
nicht auf InOut festgelegt werden.
- inheritability
- HandleInheritability
Einer der Enumerationswerte, der bestimmt, ob das zugrunde liegende Handle von untergeordneten Prozessen geerbt werden kann.
- bufferSize
- Int32
Die Größe des Puffers. Dieser Wert muss größer oder gleich 0 sein.
- pipeSecurity
- PipeSecurity
Ein Objekt, das die Zugriffssteuerung und die Überwachungssicherheit für die Pipe bestimmt.
- Attribute
Ausnahmen
inheritability
ist nicht auf None oder Inheritable festgelegt.
- oder -
bufferSize
ist kleiner als 0.
Für direction
ist InOut festgelegt.
Hinweise
Ein PipeDirection Wert von InOut wird nicht unterstützt, da anonyme Pipes als unidirektional definiert sind.