AnonymousPipeServerStream Konstruktory
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Inicjuje nowe wystąpienie klasy AnonymousPipeServerStream.
Przeciążenia
AnonymousPipeServerStream() |
Inicjuje nowe wystąpienie klasy AnonymousPipeServerStream. |
AnonymousPipeServerStream(PipeDirection) |
Inicjuje AnonymousPipeServerStream nowe wystąpienie klasy z określonym kierunkiem potoku. |
AnonymousPipeServerStream(PipeDirection, HandleInheritability) |
Inicjuje AnonymousPipeServerStream nowe wystąpienie klasy z określonym kierunkiem potoku i trybem dziedziczenia. |
AnonymousPipeServerStream(PipeDirection, SafePipeHandle, SafePipeHandle) |
Inicjuje AnonymousPipeServerStream nowe wystąpienie klasy z określonych uchwytów potoku. |
AnonymousPipeServerStream(PipeDirection, HandleInheritability, Int32) |
Inicjuje AnonymousPipeServerStream nowe wystąpienie klasy z określonym kierunkiem potoku, trybem dziedziczenia i rozmiarem buforu. |
AnonymousPipeServerStream(PipeDirection, HandleInheritability, Int32, PipeSecurity) |
Inicjuje AnonymousPipeServerStream nowe wystąpienie klasy z określonym kierunkiem potoku, trybem dziedziczenia, rozmiarem buforu i zabezpieczeniami potoku. |
AnonymousPipeServerStream()
- Źródło:
- AnonymousPipeServerStream.cs
- Źródło:
- AnonymousPipeServerStream.cs
- Źródło:
- AnonymousPipeServerStream.cs
Inicjuje nowe wystąpienie klasy AnonymousPipeServerStream.
public:
AnonymousPipeServerStream();
public AnonymousPipeServerStream ();
Public Sub New ()
Uwagi
W przypadku AnonymousPipeServerStream konstruktorów bez parametru domyślnym kierunkiem PipeDirection jest Out. PipeDirection Wartość nie jest obsługiwana InOut , ponieważ potoki anonimowe są definiowane jako jednokierunkowe.
Ten konstruktor tworzy AnonymousPipeServerStream obiekt, który ma domyślny rozmiar buforu, bez zabezpieczeń potoku i HandleInheritability wartość None.
Dotyczy
AnonymousPipeServerStream(PipeDirection)
- Źródło:
- AnonymousPipeServerStream.cs
- Źródło:
- AnonymousPipeServerStream.cs
- Źródło:
- AnonymousPipeServerStream.cs
Inicjuje AnonymousPipeServerStream nowe wystąpienie klasy z określonym kierunkiem potoku.
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)
Parametry
- direction
- PipeDirection
Jedna z wartości wyliczenia, która określa kierunek potoku.
Potoki anonimowe mogą być tylko w jednym kierunku, więc direction
nie można ustawić wartości InOut.
Wyjątki
direction
jest ustawiona na InOutwartość .
Uwagi
PipeDirection Wartość nie jest obsługiwanaInOut, ponieważ potoki anonimowe są definiowane jako jednokierunkowe.
Ten konstruktor tworzy AnonymousPipeServerStream obiekt, który ma domyślny rozmiar buforu, bez zabezpieczeń potoku i HandleInheritability wartość None.
Dotyczy
AnonymousPipeServerStream(PipeDirection, HandleInheritability)
- Źródło:
- AnonymousPipeServerStream.cs
- Źródło:
- AnonymousPipeServerStream.cs
- Źródło:
- AnonymousPipeServerStream.cs
Inicjuje AnonymousPipeServerStream nowe wystąpienie klasy z określonym kierunkiem potoku i trybem dziedziczenia.
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)
Parametry
- direction
- PipeDirection
Jedna z wartości wyliczenia, która określa kierunek potoku.
Potoki anonimowe mogą być tylko w jednym kierunku, więc direction
nie można ustawić wartości InOut.
- inheritability
- HandleInheritability
Jedna z wartości wyliczenia, która określa, czy bazowy uchwyt może być dziedziczony przez procesy podrzędne. Musi być ustawiona na None wartość lub Inheritable.
Wyjątki
inheritability
nie jest ustawiona na None wartość lub Inheritable.
direction
jest ustawiona na InOutwartość .
Przykłady
W poniższym przykładzie pokazano metodę wysyłania ciągu z procesu nadrzędnego do procesu podrzędnego przy użyciu potoków anonimowych. W tym przykładzie AnonymousPipeServerStream obiekt jest tworzony w procesie nadrzędnym z wartością PipeDirectionOut.
//<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>
Uwagi
PipeDirection Wartość nie jest obsługiwanaInOut, ponieważ potoki anonimowe są definiowane jako jednokierunkowe.
Ten konstruktor tworzy AnonymousPipeServerStream obiekt, który ma domyślny rozmiar buforu i nie ma zabezpieczeń potoku.
Dotyczy
AnonymousPipeServerStream(PipeDirection, SafePipeHandle, SafePipeHandle)
- Źródło:
- AnonymousPipeServerStream.cs
- Źródło:
- AnonymousPipeServerStream.cs
- Źródło:
- AnonymousPipeServerStream.cs
Inicjuje AnonymousPipeServerStream nowe wystąpienie klasy z określonych uchwytów potoku.
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)
Parametry
- direction
- PipeDirection
Jedna z wartości wyliczenia, która określa kierunek potoku.
Potoki anonimowe mogą być tylko w jednym kierunku, więc direction
nie można ustawić wartości InOut.
- serverSafePipeHandle
- SafePipeHandle
Bezpieczny uchwyt dla potoku, który ten AnonymousPipeServerStream obiekt będzie hermetyzować.
- clientSafePipeHandle
- SafePipeHandle
Bezpieczny uchwyt dla AnonymousPipeClientStream obiektu.
- Atrybuty
Wyjątki
serverSafePipeHandle
lub clientSafePipeHandle
jest nieprawidłowym uchwytem.
serverSafePipeHandle
lub clientSafePipeHandle
to null
.
direction
jest ustawiona na InOutwartość .
Uwagi
PipeDirection Wartość nie jest obsługiwanaInOut, ponieważ potoki anonimowe są definiowane jako jednokierunkowe.
Dotyczy
AnonymousPipeServerStream(PipeDirection, HandleInheritability, Int32)
- Źródło:
- AnonymousPipeServerStream.cs
- Źródło:
- AnonymousPipeServerStream.cs
- Źródło:
- AnonymousPipeServerStream.cs
Inicjuje AnonymousPipeServerStream nowe wystąpienie klasy z określonym kierunkiem potoku, trybem dziedziczenia i rozmiarem buforu.
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)
Parametry
- direction
- PipeDirection
Jedna z wartości wyliczenia, która określa kierunek potoku.
Potoki anonimowe mogą być tylko w jednym kierunku, więc direction
nie można ustawić wartości InOut.
- inheritability
- HandleInheritability
Jedna z wartości wyliczenia, która określa, czy bazowy uchwyt może być dziedziczony przez procesy podrzędne. Musi być ustawiona na None wartość lub Inheritable.
- bufferSize
- Int32
Rozmiar buforu. Ta wartość musi być większa lub równa 0.
- Atrybuty
Wyjątki
inheritability
nie jest ustawiona na None wartość lub Inheritable.
-lub-
bufferSize
wartość jest mniejsza niż 0.
direction
jest ustawiona na InOutwartość .
Uwagi
PipeDirection Wartość nie jest obsługiwanaInOut, ponieważ potoki anonimowe są definiowane jako jednokierunkowe.
Ten konstruktor tworzy AnonymousPipeServerStream obiekt bez zabezpieczeń potoku.
Dotyczy
AnonymousPipeServerStream(PipeDirection, HandleInheritability, Int32, PipeSecurity)
Inicjuje AnonymousPipeServerStream nowe wystąpienie klasy z określonym kierunkiem potoku, trybem dziedziczenia, rozmiarem buforu i zabezpieczeniami potoku.
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)
Parametry
- direction
- PipeDirection
Jedna z wartości wyliczenia, która określa kierunek potoku.
Potoki anonimowe mogą być tylko w jednym kierunku, więc direction
nie można ustawić wartości InOut.
- inheritability
- HandleInheritability
Jedna z wartości wyliczenia, która określa, czy bazowy uchwyt może być dziedziczony przez procesy podrzędne.
- bufferSize
- Int32
Rozmiar buforu. Ta wartość musi być większa lub równa 0.
- pipeSecurity
- PipeSecurity
Obiekt, który określa zabezpieczenia kontroli dostępu i inspekcji potoku.
- Atrybuty
Wyjątki
inheritability
nie jest ustawiona na None wartość lub Inheritable.
-lub-
bufferSize
wartość jest mniejsza niż 0.
direction
jest ustawiona na InOutwartość .
Uwagi
PipeDirection Wartość nie jest obsługiwanaInOut, ponieważ potoki anonimowe są definiowane jako jednokierunkowe.